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

Rian Quinn <rianquinn at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #5 from Rian Quinn <rianquinn at gmail dot com> ---
It appears to be resolved by simply executing the symbols located in .ctors /
.dtors. Although these sections are documented as being dedicated for globally
defined constructors / destructors, on x86_64, they actually point to a set of
functions labeled:

_GLOBAL__sub_I_XXX
_GLOBAL__sub_D_XXX

which appear to call:

_Z41__static_initialization_and_destruction_0ii

Once this symbol is executed, not only are the globally defined constructors /
destructors executed, but the crashes that were identified in this bug report
are also addressed. This includes crashes for pointers to globally defined
classes, but also pointers to member variables.

Reply via email to