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

            Bug ID: 110382
           Summary: [13/14 Regression] internal compiler error: in
                    verify_ctor_sanity
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mpolacek at gcc dot gnu.org
  Target Milestone: ---

using value_type = double;
struct FOO {
  value_type a = 0;
};
constexpr value_type sum_8_foos(FOO *foos) {
  value_type sum = 0;
  for (int i = 0;; ++i) {
    auto foo = foos[0];
    sum += foo.a;
  }
}
constexpr value_type test_1() {
  FOO foos[1];
  return sum_8_foos(foos);
}
int main() { return test_1(); }

$ ./cc1plus -quiet bz.C 
bz.C: In function ‘int main()’:
bz.C:16:27:   in ‘constexpr’ expansion of ‘test_1()’
bz.C:14:20:   in ‘constexpr’ expansion of ‘sum_8_foos(((FOO*)(& foos)))’
bz.C:16:27: internal compiler error: in verify_ctor_sanity, at
cp/constexpr.cc:5001
   16 | int main() { return test_1(); }
      |                     ~~~~~~^~
0xd9dfa1 verify_ctor_sanity
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:5001
0xd9e1a6 cxx_eval_bare_aggregate
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:5029
0xda8eaa cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7606
0xd9b18b cxx_eval_array_reference
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:4297
0xda8aff cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7531
0xda0db8 cxx_eval_indirect_ref
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:5674
0xda8503 cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7373
0xda7807 cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7173
0xda51da cxx_eval_statement_list
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:6567
0xdaa61e cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7843
0xdaa697 cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7847
0xda574d cxx_eval_loop_expr
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:6640
0xdaaa43 cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7926
0xda51da cxx_eval_statement_list
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:6567
0xdaa61e cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7843
0xdaa697 cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7847
0xda51da cxx_eval_statement_list
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:6567
0xdaa61e cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7843
0xdaa697 cxx_eval_constant_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:7847
0xd96576 cxx_eval_call_expression
        /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:3102

Reply via email to