http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55617
m...@gcc.gnu.org <mrs at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mrs at gcc dot gnu.org --- Comment #40 from mrs at gcc dot gnu.org <mrs at gcc dot gnu.org> 2013-02-02 19:20:31 UTC --- if (ctor_recA->position > ctor_recB->position) return -1; if (ctor_recA->position < ctor_recB->position) return 1; This is wrong. I think we want this reversed as well. We want original order. A testcase with two ctors, should in the end have the one with the lower original position first. So, for me to approve it, I need to know if sorting just inside 1 translation unit is enough to make -fsanitize=address work. I fear the answer to that is no, and without cross translation unit support, this is just bug pushing (obscuring a bug with a non-fix that just makes fixing it even harder). I won't approve it if it is bug pushing. If cross has to work, then cross shared libraries I suspect has to work as well.