http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54582



--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-02-06 
13:25:29 UTC ---

Because object sizes are finalized only during the objsz pass, after lots of

optimization passes.  Note, as I said earlier, what matters most is that the

check is performed at runtime in that case and thus the source code bug can't

be exploited.  The warning is just to let the user know earlier than at

runtime, when easily possible.



-D_FORTIFY_SOURCE{,=2} is done using inline functions, so the FE pretty much

never knows the object size, you need inlining and various propagations (plus

for many cases also the objsz pass that propagates the object size properties

through the IL).  In the FE you could do it only if all the fortification

functions were preprocessor macros, and handle only the most simple cases.

Reply via email to