https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115159
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Last reconfirmed|2024-05-19 00:00:00 |2024-05-21 Status|UNCONFIRMED |NEW CC| |ppalka at gcc dot gnu.org --- Comment #3 from Patrick Palka <ppalka at gcc dot gnu.org> --- Confirmed, thanks for the reproducer. Reduced: $ cat 115159_a.H struct QDebug; template<class T> void f(T); template<class T> struct QList { QDebug operator<(QList &other) noexcept(noexcept(f(other))); QDebug operator>(QList &other) noexcept(noexcept(f(other))); }; struct QObjectData { QList<int> children; }; struct QIODevice { QObjectData d_ptr; }; struct QDebug { QDebug(QIODevice); }; $ cat 115159_b.C import "115159_a.H"; $ g++ -fno-module-lazy -fmodules-ts -std=c++20 115159_{a.H,b.C} 115159_b.C:1:22: internal compiler error: in nothrow_spec_p, at cp/except.cc:1202