https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119154
Nathaniel Shead <nshead at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Last reconfirmed| |2025-03-09 Status|UNCONFIRMED |NEW --- Comment #9 from Nathaniel Shead <nshead at gcc dot gnu.org> --- Confirmed. Further reduced: // a.cpp export module foo; extern "C++" inline __attribute__((__gnu_inline__)) void bar() {} // b.cpp void bar(); import foo; g++ -fmodules -fno-module-lazy -S a.cpp b.cpp b.cpp:2:12: internal compiler error: in import_export_decl, at cp/decl2.cc:3561 2 | import foo; | ^ 0x3cab7bf internal_error(char const*, ...) ../../gcc/gcc/diagnostic-global-context.cc:517 0x3c76b30 fancy_abort(char const*, int, char const*) ../../gcc/gcc/diagnostic.cc:1722 0x105652e import_export_decl(tree_node*) ../../gcc/gcc/cp/decl2.cc:3561 0x105edfd c_parse_final_cleanups() ../../gcc/gcc/cp/decl2.cc:5692 0x145346b c_common_parse_file() ../../gcc/gcc/c-family/c-opts.cc:1397 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. Worth noting that mixing flags between consumers and producers of modules is likely to cause havoc in general... this isn't well tested at all yet.