Experimental compiler modifications to protect function pointers against overwrites through memory corruption vulnerabilities