https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120040
Nathaniel Shead <nshead at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |ASSIGNED Keywords| |ice-on-valid-code Last reconfirmed| |2025-05-01 Assignee|unassigned at gcc dot gnu.org |nshead at gcc dot gnu.org Blocks| |103524 Ever confirmed|0 |1 CC| |nshead at gcc dot gnu.org --- Comment #1 from Nathaniel Shead <nshead at gcc dot gnu.org> --- Confirmed. The attached sample builds (with a warning) with '-fmodules -std=c++17', but ICEs with C++20. The issue is that the 'heap ' type generated by the constexpr evaluation code has a TYPE_NAME that is an IDENTIFIER (rather than TYPE_DECL), which confuses the modules streaming code. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103524 [Bug 103524] [meta-bug] modules issue