This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 1/2] PR c++/61636


On 04/19/2015 03:03 PM, Adam Butcher wrote:
I think I need to resolve a member call within a generic lambda as if it
were not in template context to determine whether it unambiguously
resolves to a static member function.  If it does, then no capture
required.  Otherwise, 'this' should be captured because either a) the
call is to a non-static member function without any dependent parameters
or b) because it may resolve to a non-static member function at callop
instantiate time.

Right.

No sure whether I can do all this at my current patch site in
cp_parser_postfix_expression or whether it needs to be later.

I think it needs to be later, when the context of the lambda is fully instantiated, so that any other dependencies are resolved. Perhaps this means that we need to partially instantiate the (generic) lambda body...

This is reminding me of bug 47226, though I'm not sure the fixes need to coordinate.

Jason


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]