https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84497
--- Comment #3 from Nathan Sidwell <nathan at gcc dot gnu.org> --- Created attachment 43550 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43550&action=edit Simpler testcase The simpler testcase removes all the atomic cruft. Compile with -DDEF to get the defining object file and without that define to get the using object file. for the base type: TYPE_NEEDS_CONSTRUCTING true TYPE_HAS_CONSTEXPR_CTOR true TYPE_HAS_TRIVIAL_DESTRUCTOR true DECL_EXTERNAL true for the derived type: TYPE_NEEDS_CONSTRUCTING true TYPE_HAS_CONSTEXPR_CTOR false TYPE_HAS_TRIVIAL_DESTRUCTOR true DECL_EXTERNAL true