[Bug 1914109] Re: gcc-7: Internal compiler error: Error reporting routines re-entered

Matthias Klose 1914109 at bugs.launchpad.net
Sun Feb 7 12:59:27 UTC 2021


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
Foundations Bugs, which is subscribed to gcc-7 in Ubuntu.
https://bugs.launchpad.net/bugs/1914109

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

Status in gcc:
  Invalid
Status in gcc-7 package in Ubuntu:
  Fix Released

Bug description:
  When compiling some code, getting an internal compiler error:
  $ g++ -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, {});
                                 ^
  ‘
  Internal compiler error: Error reporting routines re-entered.
  Please submit a full bug report,
  with preprocessed source if appropriate.
  See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.

  GCC version is:
  $ g++ --version
  g++ (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
  Copyright (C) 2017 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

  Minimal reproduction is attached.

  Ubuntu version is:
  $ lsb_release -rd
  Description:    Ubuntu 18.04.4 LTS
  Release:        18.04

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



More information about the foundations-bugs mailing list