https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97293
Bug ID: 97293 Summary: ICE Segfault in C++20 mode Product: gcc Version: 10.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: furkanusta17 at gmail dot com Target Milestone: --- g++ (SUSE Linux) 10.2.1 20200825 [revision c0746a1beb1ba073c7981eb09f55b3d993b32e5c] Following compiles with -std=c++17 but fails with 20 g++ -c -std=c++20 main.cpp template <typename Type> struct receiver { struct type; }; struct test { void operator()(){} }; template <typename Type> struct receiver<Type>::type { template <typename... Values> using func = test; void cleanup() noexcept { func<>(); } }; main.cpp: In substitution of ‘template<class Type> template<class ... Values> using func = _func [with Values = {}; Type = Type]’: main.cpp:17:10: required from here main.cpp:17:10: internal compiler error: Segmentation fault 17 | func<>(); | ^ Using gcc-trunk (11.0.0 20201004) in godbolt, it seems to fail with -std=c++17 as well https://godbolt.org/z/re7347