https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120195
Bug ID: 120195 Summary: [modules] export using of purview 'extern "C++"' declaration not bound in importers Product: gcc Version: 16.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: nshead at gcc dot gnu.org Blocks: 103524 Target Milestone: --- Consider: // a.cpp export module M; extern "C++" void foo(); export using ::foo; // b.cpp import M; int main() { foo(); } $ g++ -fmodules -S a.cpp b.cpp b.cpp: In function ‘int main()’: b.cpp:2:14: error: ‘foo’ was not declared in this scope 2 | int main() { foo(); } | ^~~ Note that this works if 'foo' had been defined in the GMF instead of within the module purview. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103524 [Bug 103524] [meta-bug] modules issue