[Bug c++/91538] ICE with generic lambda.

2021-10-01 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91538

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED
   See Also||https://gcc.gnu.org/bugzill
   ||a/show_bug.cgi?id=93140

--- Comment #3 from Andrew Pinski  ---
Fixed in GCC 8.4.0, GCC 9.3.0 and GCC 10+ by the patch which fixed PR 93140.

[Bug c++/91538] ICE with generic lambda.

2020-04-16 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91538

Arseny Solokha  changed:

   What|Removed |Added

 CC||asolokha at gmx dot com

--- Comment #2 from Arseny Solokha  ---
g++-10.0.1-alpha20200412 snapshot (g:87be4cecfc6e42390303be1ca92bc8bc587b0bd6)
and g++ 9.3 both don't crash, rejecting it instead:

% g++-10.0.1 -c pr91538.C   
pr91538.C: In function 'void f()':
pr91538.C:3:8: error: no match for call to '(f()::) (int)'
3 | l(0);
  |^
pr91538.C:2:14: note: candidate: 'f()::
[with auto:1 = {}]'
2 | auto l = [](auto... args, decltype(args)...){};
  |  ^
pr91538.C:2:14: note:   candidate expects 0 arguments, 1 provided

as do clang++ 9 and 10:

% clang++-10 -c pr91538.C 
pr91538.C:3:5: error: no matching function for call to object of type '(lambda
at pr91538.C:2:14)'
l(0);
^
pr91538.C:2:14: note: candidate function [with args:auto = <>] not viable:
requires 0 arguments, but 1 was provided
auto l = [](auto... args, decltype(args)...){};
 ^
1 error generated.

So it looks like this PR is really ice-on-invalid-code for gcc 8?

[Bug c++/91538] ICE with generic lambda.

2019-08-24 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91538

Marek Polacek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2019-08-24
 CC||mpolacek at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Marek Polacek  ---
Confirmed, doesn't seem like a regression.

Clearly there's an infinite loop going on:

#1133 0x00ad5ba0 in tsubst (t=,
args=,
complain=0, in_decl=) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:14383
#1134 0x00ad1ed2 in tsubst_decl (t=, 
args=, complain=0) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:13516
#1135 0x00ac8513 in tsubst_pack_expansion (t=, 
args=, complain=0, in_decl=)
at /home/mpolacek/src/gcc/gcc/cp/pt.c:12235
#1136 0x00ad1e24 in tsubst_decl (t=,
args=, 
complain=0) at /home/mpolacek/src/gcc/gcc/cp/pt.c:13507
#1137 0x00ad5ba0 in tsubst (t=,
args=, 
complain=0, in_decl=) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:14383
#1138 0x00ad1ed2 in tsubst_decl (t=, 
args=, complain=0) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:13516
#1139 0x00ac8513 in tsubst_pack_expansion (t=, 
args=, complain=0, in_decl=)
at /home/mpolacek/src/gcc/gcc/cp/pt.c:12235
#1140 0x00ad1e24 in tsubst_decl (t=,
args=, 
complain=0) at /home/mpolacek/src/gcc/gcc/cp/pt.c:13507
#1141 0x00ad5ba0 in tsubst (t=,
args=, 
complain=0, in_decl=) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:14383
#1142 0x00ad1ed2 in tsubst_decl (t=, 
args=, complain=0) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:13516
#1143 0x00ac8513 in tsubst_pack_expansion (t=, 
args=, complain=0, in_decl=)
at /home/mpolacek/src/gcc/gcc/cp/pt.c:12235
#1144 0x00ad1e24 in tsubst_decl (t=,
args=, 
complain=0) at /home/mpolacek/src/gcc/gcc/cp/pt.c:13507
#1145 0x00ad5ba0 in tsubst (t=,
args=, 
complain=0, in_decl=) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:14383
#1146 0x00ad1ed2 in tsubst_decl (t=, 
args=, complain=0) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:13516
#1147 0x00ac8513 in tsubst_pack_expansion (t=, 
args=, complain=0, in_decl=)
at /home/mpolacek/src/gcc/gcc/cp/pt.c:12235
#1148 0x00ad1e24 in tsubst_decl (t=,
args=, 
complain=0) at /home/mpolacek/src/gcc/gcc/cp/pt.c:13507
#1149 0x00ad5ba0 in tsubst (t=,
args=, 
complain=0, in_decl=) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:14383
#1150 0x00ad1ed2 in tsubst_decl (t=, 
args=, complain=0) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:13516
#1151 0x00ac8513 in tsubst_pack_expansion (t=, 
args=, complain=0, in_decl=)
at /home/mpolacek/src/gcc/gcc/cp/pt.c:12235
#1152 0x00ad1e24 in tsubst_decl (t=,
args=, 
complain=0) at /home/mpolacek/src/gcc/gcc/cp/pt.c:13507
#1153 0x00ad5ba0 in tsubst (t=,
args=, 
complain=0, in_decl=) at
/home/mpolacek/src/gcc/gcc/cp/pt.c:14383