https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120315
Bug ID: 120315 Summary: std::format gcc 14 / 15 interop issue Product: gcc Version: 15.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: nilsgladitz at gmail dot com Target Milestone: --- Created attachment 61443 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=61443&action=edit Testcase I got undefined behavior (segfault, missing output or exceptions) when using a gcc 14 compiled library with a gcc 15 compiled executable. The issue does not seem to be reproducible when the same compiler is used for both the library and the compiler. Attached is a reduced test case that I compile on x86_64 GNU Linux thusly: /opt/gcc-14.2.0/bin/g++ -fvisibility=hidden -fvisibility-inlines-hidden -shared -fPIC -std=c++23 library.cpp -o liblibrary14.so -Wl,-soname,liblibrary14.so /opt/gcc-15.1.0/bin/g++ -fvisibility=hidden -fvisibility-inlines-hidden -shared -fPIC -std=c++23 library.cpp -o liblibrary15.so -Wl,-soname,liblibrary15.so /opt/gcc-15.1.0/bin/g++ -std=c++23 executable.cpp -o executable14 liblibrary14.so '-Wl,-rpath,$ORIGIN' /opt/gcc-15.1.0/bin/g++ -std=c++23 executable.cpp -o executable15 liblibrary15.so '-Wl,-rpath,$ORIGIN' Running executable15 I get the expected output: Hello World Running executable14 I get e.g.: terminate called after throwing an instance of 'std::format_error' what(): format error: invalid arg-id in format string Aborted (core dumped) I am unsure if maybe std::format isn't supposed to be ABI stable yet or if there is something else not being done properly / well defined in the test case.