https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120499
Nathaniel Shead <nshead at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |nshead at gcc dot gnu.org
Ever confirmed|0 |1
Last reconfirmed| |2025-06-01
Blocks| |103524
Status|UNCONFIRMED |NEW
--- Comment #1 from Nathaniel Shead <nshead at gcc dot gnu.org> ---
Confirmed. Minimal reproduction (without 'std'):
// a.cpp
export module A;
struct allocator {
~allocator() {}
};
export template <typename _Tp>
struct vector {
struct _Vector_impl : public allocator {};
_Vector_impl _M_impl;
vector() = default;
};
template <typename T>
struct regex_token_iterator {
vector<int> _M_subs;
};
using cregex_token_iterator = regex_token_iterator<const char*>;
// b.cpp
export module B;
import A;
class Coll {
vector<int> vals;
};
export Coll createColl() {
return Coll{};
}
// c.cpp
import B;
int main() {
createColl();
}
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103524
[Bug 103524] [meta-bug] modules issue