https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88612

            Bug ID: 88612
           Summary: [9 Regression] Internal compiler error: Error
                    reporting routines re-entered.
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: dmalcolm at gcc dot gnu.org
  Target Milestone: ---
              Host: x86_64-pc-linux-gnu
            Target: aarch64-linux-gnu

Following cross-compiler is causing a problem:

$ aarch64-linux-gnu-g++
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C
-fpack-struct -c
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C: In
substitution of ‘template<class ... A> decltype
(indirect_call(((VariadicBind<void (*)(int, int),
int>*)this)->VariadicBind<void (*)(int, int), int>::f, ((VariadicBind<void
(*)(int, int), int>*)this)->VariadicBind<void (*)(int, int), int>::t,
VariadicBind::operator()::a ...)) VariadicBind<void (*)(int, int),
int>::operator()<A ...>(A ...) [with A = {int}]’:
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C:5:46:  
required by substitution of ‘template<class F, class ... T> decltype
(f(indirect_call::t ...)) indirect_call(F, T ...) [with F = VariadicBind<void
(*)(int, int), int>; T = {int}]’
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C:17:52:  
required by substitution of ‘template<class ... A> decltype
(indirect_call(((VariadicBind<VariadicBind<void (*)(int, int), int>,
int>*)this)->VariadicBind<VariadicBind<void (*)(int, int), int>, int>::f,
((VariadicBind<VariadicBind<void (*)(int, int), int>,
int>*)this)->VariadicBind<VariadicBind<void (*)(int, int), int>, int>::t,
VariadicBind::operator()::a ...)) VariadicBind<VariadicBind<void (*)(int, int),
int>, int>::operator()<A ...>(A ...) [with A = {}]’
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C:32:8:  
recursively required from ‘void apply(F, V1, V ...) [with F = VariadicBind<void
(*)(int, int), int>; V1 = int; V = {}]’
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C:32:8:  
required from ‘void apply(F, V1, V ...) [with F = void (*)(int, int); V1 = int;
V = {int}]’
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C:39:19:  
required from here
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/cpp0x/decltype45.C:17:53:
warning: taking address of packed member of ‘VariadicBind<void (*)(int, int),
int>’ may result in an unaligned pointer value [-Waddress-of-packed-member]
   17 |   auto operator()(A... a) -> decltype(indirect_call(f, t, a...))
      |                                                     ^
‘
Internal compiler error: Error reporting routines re-entered.
0x5fd3c6 convert_for_arg_passing(tree_node*, tree_node*, int)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/call.c:7633
0x6091a8 build_over_call
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/call.c:8215
0x60adb7 build_new_function_call(tree_node*, vec<tree_node*, va_gc,
vl_embed>**, int)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/call.c:4407
0x71d298 finish_call_expr(tree_node*, vec<tree_node*, va_gc, vl_embed>**, bool,
bool, int)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/semantics.c:2568
0x6ff874 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/pt.c:18851
0x6f8887 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/pt.c:14991
0x6f8887 tsubst(tree_node*, tree_node*, int, tree_node*)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/pt.c:14991
0x66ab2d dump_template_bindings
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:407
0x66ab2d dump_substitution
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:1538
0x66b00b dump_substitution
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:1531
0x66b00b dump_function_decl
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:1694
0x670a61 dump_decl
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:1094
0x670a61 decl_to_string
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:3070
0x670a61 cp_printer
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:4084
0x12bd07a pp_format(pretty_printer*, text_info*)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/pretty-print.c:1390
0x12bd549 pp_format_verbatim(pretty_printer*, text_info*)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/pretty-print.c:1452
0x12bd614 pp_verbatim(pretty_printer*, char const*, ...)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/pretty-print.c:1671
0x66992d print_instantiation_full_context
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:3468
0x66992d maybe_print_instantiation_context
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:3616
0x66ea8d cp_diagnostic_starter
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cp/error.c:3319

Reply via email to