[Bug bootstrap/63888] [5 Regression] bootstrap failed when configured with -with-build-config=bootstrap-asan --disable-werror

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Dec 12 22:50:00 GMT 2014


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63888

--- Comment #17 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Kostya Serebryany from comment #16)
> Frankly, I realize that I don't understand the subtleties of this problem.
> :( 
> 
> First, if this is C++ we clearly have a bug (ODR violation) and we are done. 

So it is an ODR violation in C++, but you won't report it (remember, the binary
is not instrumented), just it will misbehave (can mark valid memory of other
vars in the binary as poisoned, e.g.).

> Then, if this is C w/o any extra flags we will not instrument these globals.

Not true, the vars are initialized, thus are not common.  Or the var in the
binary could be common, and the var in the shared library not, etc.
And I've actually verified both clang and gcc instrument it.

Registering something assuming padding has been added (and aligned) when you
don't have a control on it is just wrong, and the local alias is an very easy
way to avoid it.



More information about the Gcc-bugs mailing list