https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69263
Markus Trippelsdorf changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed||2016-01-13
CC||trippels at gcc dot gnu.org
Known to work||5.3.1
Summary|internal compiler error: in |[6 Regression] internal
|cxx_eval_store_expression |compiler error: in
||cxx_eval_store_expression
Ever confirmed|0 |1
Known to fail||6.0
--- Comment #2 from Markus Trippelsdorf ---
markus@x4 tmp % cat str.ii
template struct string_constexpr {
string_constexpr() = default;
template string_constexpr();
char data[N];
};
template constexpr string_constexpr s(char const (&)[N]) {
string_constexpr c{};
for (int i = 0; i < N; i++)
c.data[i] = i;
}
auto a = s("bla");
markus@x4 tmp % g++ -c str.ii
str.ii:11:17: in constexpr expansion of ‘s<4>("bla")’
str.ii:11:17: internal compiler error: in cxx_eval_store_expression, at
cp/constexpr.c:2807
auto a = s("bla");
^
0x80cf39 cxx_eval_store_expression
../../gcc/gcc/cp/constexpr.c:2807
0x80a2be cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3311
0x809ee1 cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3570
0x809dbc cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3348
0x809dbc cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3348
0x80ee61 cxx_eval_statement_list
../../gcc/gcc/cp/constexpr.c:3027
0x80a7dc cxx_eval_loop_expr
../../gcc/gcc/cp/constexpr.c:3054
0x80a7dc cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3680
0x80ee61 cxx_eval_statement_list
../../gcc/gcc/cp/constexpr.c:3027
0x80a6cd cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3614
0x80a89f cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3620
0x80ee61 cxx_eval_statement_list
../../gcc/gcc/cp/constexpr.c:3027
0x80a6cd cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3614
0x80a89f cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3620
0x808ef7 cxx_eval_call_expression
../../gcc/gcc/cp/constexpr.c:1386
0x80a856 cxx_eval_constant_expression
../../gcc/gcc/cp/constexpr.c:3237
0x80f0e8 cxx_eval_outermost_constant_expr
../../gcc/gcc/cp/constexpr.c:3773
0x8117cf maybe_constant_init(tree_node*, tree_node*)
../../gcc/gcc/cp/constexpr.c:4067
0x68ac47 store_init_value(tree_node*, tree_node*, vec**, int)
../../gcc/gcc/cp/typeck2.c:822
0x5f2ea2 check_initializer
../../gcc/gcc/cp/decl.c:6137