I just wanted to float this patch out for some feedback - It's not ready for commit. There is no functionality change - so no tests included.
This patch addresses the following:
1) It replaces the use of the "__invoke" magic name for the static
invoker, with a property within
the lambda class - I thought this would be a less brittle approach and
potentially more efficient
- though it takes up more space in the LambdaDefinitionData - how big a
deal is that?
- also with my current change can i just drop the name for this
function or do i need the
"super-secret" name?
2) Also I intend to put some utility functions in Lambda.h (I have
included some samples - these functions currently might overlap in
functionality - in my initial generic lambda implementation they were
scattered amongst various files, and i thought it might be better to
centralize them a little) - here are my questions:
- do you prefer to place utility functions within CXXMethodDecl or
Sema (ugh - the recompiles
suck with changes!) if they make sense there?
That is do you prefer IsLambdaCallOperator(MD) or
MD->IsLambdaCallOperator() ?
Thanks!
Faisal Vali
avoid-use-of-__invoke+lambda-utility-funcs.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
