https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99281
Bug ID: 99281 Summary: internal compiler error: in assign_temp, at function.c:984 Product: gcc Version: 10.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: jonathan.poelen at gmail dot com Target Milestone: --- g++ -std=c++17 test.cpp during RTL pass: expand test.cpp: In function ‘int main()’: test.cpp:27:5: internal compiler error: in assign_temp, at function.c:984 27 | pack_type<X>{get(1)}; | ^~~~~~~~~~~~~~~~~~~~ Compile with -O1 or higher. struct Data { Data() {} ~Data() {} long long i; }; struct X { Data a; int b; }; template<class T> X get(T const&) { return X{}; } template<class... Ts> struct pack_type : Ts... {}; int main() { pack_type<X>{get(1)}; }