https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94205
Bug ID: 94205
Summary: ICE in cxx_eval_constant_expression with
'this'-capturing lambda inside an NSDMI
Product: gcc
Version: 10.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: ppalka at gcc dot gnu.org
Target Milestone: ---
$ cat ice.C
struct S
{
int a = [this] { this->a = 5; return 6; } ();
};
constexpr S s = {};
$ g++ -std=c++2a ice.C
ice.C:7:18: internal compiler error: in cxx_eval_constant_expression, at
cp/constexpr.c:6176
7 | constexpr S s = {};
| ^
0x5fe2d0 cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:6176
0x941f5f cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5700
0x9413d6 cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5965
0x94eacf cxx_eval_bare_aggregate
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:3836
0x941f0f cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5930
0x943e5b cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5552
0x941f5f cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5700
0x94f4f3 cxx_bind_parameters_in_call
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:1525
0x93eb25 cxx_eval_call_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:2294
0x94177d cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5472
0x94eacf cxx_eval_bare_aggregate
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:3836
0x941f0f cxx_eval_constant_expression
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:5930
0x944b74 cxx_eval_outermost_constant_expr
/home/patrick/code/gcc-master/gcc/cp/constexpr.c:6486