it's an ICE on illegal-code. It doesn't ICE with GCC 8 in bionic.
Unlikely to be fixed in bionic, and also fixed in focal and newer
versions.

$ g++-8 -c -std=c++17 minimized.cc
minimized.cc: In function ‘void a()’:
minimized.cc:46:31: warning: ISO C++ forbids converting a string constant to 
‘char*’ [-Wwrite-strings]
   y<am>(0, 0, "", an, x::t, {});
                               ^
minimized.cc: In instantiation of ‘y<ah>::y(int, char, s, y<ah>::aj, x, int) 
[with ah = {double}; y<ah>::aj = I]::<lambda(auto:1)> [with auto:1 = b<0>]’:
minimized.cc:31:6:   required from ‘void u(m<w, af ...>, v) [with v = 
y<ah>::y(int, char, s, y<ah>::aj, x, int) [with ah = {double}; y<ah>::aj = 
I]::<lambda(auto:1)>; w = long int; w ...af = {0}]’
minimized.cc:37:6:   required from ‘y<ah>::y(int, char, s, y<ah>::aj, x, int) 
[with ah = {double}; y<ah>::aj = I]’
minimized.cc:46:31:   required from here
minimized.cc:39:15: error: ‘<anonymous>’ has incomplete type
       int{[&](J<ak>) {}};
               ^~~~~
minimized.cc:29:27: note: declaration of ‘class J<double>’
 template <typename> class J;
                           ^
minimized.cc:39:7: error: cannot convert ‘y<ah>::y(int, char, s, y<ah>::aj, x, 
int) [with ah = {double}; y<ah>::aj = I]::<lambda(auto:1)> [with auto:1 = 
b<0>]::<lambda(J<double>)>’ to ‘int’ in initialization
       int{[&](J<ak>) {}};
       ^~~


** Changed in: gcc-7 (Ubuntu)
       Status: New => Fix Released

** Changed in: gcc
       Status: New => Invalid

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1914109

Title:
  gcc-7: Internal compiler error: Error reporting routines re-entered

To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc/+bug/1914109/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to