llvm-project/clang/lib
John McCall c146582e60 When parsing an out-of-line member function declaration, we must delay
access-control diagnostics which arise from the portion of the declarator
following the scope specifier, just in case access is granted by
friending the individual method.  This can also happen with in-line
member function declarations of class templates due to templated-scope
friend declarations.

We were really playing fast-and-loose before with this sort of thing,
and it turned out to work because *most* friend functions are in file
scope.  Making us delay regardless of context exposed several bugs with
how we were manipulating delay.  I ended up needing a concept of a
context that's independent of the declarations in which it appears,
and then I actually had to make some things save contexts correctly,
but delay should be much cleaner now.

I also encapsulated all the delayed-diagnostics machinery in a single
subobject of Sema;  this is a pattern we might want to consider rolling
out to other components of Sema.

llvm-svn: 125485
2011-02-14 07:13:47 +00:00
..
AST Give some convenient idiomatic accessors to Stmt::child_range and 2011-02-13 04:07:26 +00:00
Analysis Give some convenient idiomatic accessors to Stmt::child_range and 2011-02-13 04:07:26 +00:00
Basic OpenCL: add support for __kernel, kernel keywords and EXTENSION, 2011-02-14 01:42:53 +00:00
CodeGen OpenCL: add support for __kernel, kernel keywords and EXTENSION, 2011-02-14 01:42:53 +00:00
Driver Add braces to quiet a gcc warning. 2011-02-10 20:35:01 +00:00
Frontend OpenCL: add support for __kernel, kernel keywords and EXTENSION, 2011-02-14 01:42:53 +00:00
FrontendTool CMake: LLVM_NO_RTTI must be obsolete now! 2011-02-10 09:15:32 +00:00
Headers Optimized IR for vec_splat 2010-12-01 21:59:31 +00:00
Index Give some convenient idiomatic accessors to Stmt::child_range and 2011-02-13 04:07:26 +00:00
Lex Move support for "#pragma STDC FP_CONTRACT" to Parser; add Sema actions 2011-02-14 01:42:35 +00:00
Parse When parsing an out-of-line member function declaration, we must delay 2011-02-14 07:13:47 +00:00
Rewrite Give some convenient idiomatic accessors to Stmt::child_range and 2011-02-13 04:07:26 +00:00
Sema When parsing an out-of-line member function declaration, we must delay 2011-02-14 07:13:47 +00:00
Serialization When reading the AST, delay loading of the redeclaration chain to avoid deeply nested calls. 2011-02-12 07:50:47 +00:00
StaticAnalyzer Teach the IdempotentOperations checker to ignore property setters. 2011-02-12 18:50:03 +00:00
CMakeLists.txt [analyzer] Move the files in lib/StaticAnalyzer to lib/StaticAnalyzer/Core. 2011-02-08 22:30:36 +00:00
Makefile Chris Lattner has strong opinions about directory 2010-12-23 19:38:26 +00:00