llvm-project/clang/lib/Parse
Douglas Gregor 7fcbd902b4 Implement name mangling for lambda expressions that occur within the
default arguments of function parameters. This simple-sounding task is
complicated greatly by two issues:

  (1) Default arguments aren't actually a real context, so we need to
  maintain extra state within lambda expressions to track when a
  lambda was actually in a default argument.
  (2) At the time that we parse a default argument, the FunctionDecl
  doesn't exist yet, so lambda closure types end up in the enclosing
  context. It's not clear that we ever want to change that, so instead
  we introduce the notion of the "effective" context of a declaration
  for the purposes of name mangling.

llvm-svn: 151011
2012-02-21 00:37:24 +00:00
..
CMakeLists.txt Thread Safety: Patch to implement delayed parsing of attributes within a 2011-09-08 17:42:22 +00:00
Makefile BUILD_ARCHIVE is the default for libraries, no need to set it. 2010-07-18 00:14:47 +00:00
ParseAST.cpp Make parsing of objc @implementations more robust. 2012-02-07 16:50:53 +00:00
ParseCXXInlineMethods.cpp Implement name mangling for lambda expressions that occur within the 2012-02-21 00:37:24 +00:00
ParseDecl.cpp Implement name mangling for lambda expressions that occur within the 2012-02-21 00:37:24 +00:00
ParseDeclCXX.cpp Fix crash-on-invalid for 'operator int[]()' in C++11. 2012-02-14 09:00:46 +00:00
ParseExpr.cpp Change wording of warning about using __bridge casts in non-ARC. 2012-02-18 04:42:38 +00:00
ParseExprCXX.cpp Basic support for name mangling of C++11 lambda expressions. Because 2012-02-20 19:44:39 +00:00
ParseInit.cpp De-nest tentative parsing to disambiguate lambdas from designators; no 2012-02-17 16:41:16 +00:00
ParseObjc.cpp Generalize -Wempty-body: warn when statement body is empty (closes: PR11329) 2012-02-14 22:14:32 +00:00
ParsePragma.cpp Implement #pragma redefine_extname. 2012-02-18 16:12:34 +00:00
ParsePragma.h Implement #pragma redefine_extname. 2012-02-18 16:12:34 +00:00
ParseStmt.cpp Reject continue/break statements within members of local functions nested within 2012-02-17 01:35:32 +00:00
ParseTemplate.cpp Allow thread safety attributes on function definitions. 2012-02-16 16:50:43 +00:00
ParseTentative.cpp With a little more work in the tentative parse determining whether a statement 2012-01-25 01:19:14 +00:00
Parser.cpp Implement #pragma redefine_extname. 2012-02-18 16:12:34 +00:00
RAIIObjectsForParser.h Rename Diagnostic to DiagnosticsEngine as per issue 5397 2011-09-25 23:23:43 +00:00