Re: C++ PATCH for c++/90548 - ICE with generic lambda and empty pack

2019-05-28 Thread Jason Merrill
On 5/22/19 5:50 PM, Marek Polacek wrote: On Wed, May 22, 2019 at 12:17:04AM -0400, Jason Merrill wrote: On 5/20/19 6:08 PM, Marek Polacek wrote: We ICE here because we are accessing call_args even though it's empty: (gdb) p (*call_args).is_empty() $5 = true It's empty because the pack process

Re: C++ PATCH for c++/90548 - ICE with generic lambda and empty pack

2019-05-22 Thread Marek Polacek
On Wed, May 22, 2019 at 12:17:04AM -0400, Jason Merrill wrote: > On 5/20/19 6:08 PM, Marek Polacek wrote: > > We ICE here because we are accessing call_args even though it's empty: > > > > (gdb) p (*call_args).is_empty() > > $5 = true > > > > It's empty because the pack processed by tsubst_pack_e

Re: C++ PATCH for c++/90548 - ICE with generic lambda and empty pack

2019-05-21 Thread Jason Merrill
On 5/20/19 6:08 PM, Marek Polacek wrote: We ICE here because we are accessing call_args even though it's empty: (gdb) p (*call_args).is_empty() $5 = true It's empty because the pack processed by tsubst_pack_expansion expanded into an empty vector, so nothing got pushed onto call_args. So handl

C++ PATCH for c++/90548 - ICE with generic lambda and empty pack

2019-05-20 Thread Marek Polacek
We ICE here because we are accessing call_args even though it's empty: (gdb) p (*call_args).is_empty() $5 = true It's empty because the pack processed by tsubst_pack_expansion expanded into an empty vector, so nothing got pushed onto call_args. So handle that, and also handle pushing 'this' prop