We have been developing a new security hardening feature for GCC that
is designed to detect and handle (during program execution) when a
vtable pointer that is about to be used for a virtual function call is
not a valid vtable pointer for that call (i.e. it has become
corrupted, possibly due to a hacker attack). We gave a presentation
on this work at the Gnu Tools Cauldron in Prague last July. We now
have the implementation fully working and are submitting this patch
for review. We would like to get this into the next release of GCC if
possible.