https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115479
Bug ID: 115479 Summary: undefined reference to [abi:cxx11] with variadic template of constexpr template structs Product: gcc Version: 14.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: awright at tradebot dot com Target Milestone: --- GCC fails to link in this example (https://godbolt.org/z/M5hz8Gxd7). This works with the latest Clang and MSVC. For std::string and std::list<> types, it appears the compiled source is missing the [abi:cxx11] tag. $ nm --demangle main.cpp.o | rg process U process(Configurator<STRING_PARAM[abi:cxx11], LIST_PARAM[abi:cxx11]> const&) $ nm --demangle config.cpp.o | rg process 0000000000000000 T process(Configurator<STRING_PARAM, LIST_PARAM> const&) If the tag is specified explicitly with `__attribute__((abi_tag("cxx11")))`, linkage succeeds.