hanchenye-llvm-project/clang/lib/Parse
Erik Pilkington 0876cae0d7 Add support for namespaces on #pragma clang attribute
Namespaces are introduced by adding an "identifier." before a
push/pop directive. Pop directives with namespaces can only pop a
attribute group that was pushed with the same namespace. Push and pop
directives that don't opt into namespaces have the same semantics.

This is necessary to prevent a pitfall of using multiple #pragma
clang attribute directives spread out in a large file, particularly
when macros are involved. It isn't easy to see which pop corripsonds
to which push, so its easy to inadvertently pop the wrong group.

Differential revision: https://reviews.llvm.org/D55628

llvm-svn: 349845
2018-12-20 22:32:04 +00:00
..
CMakeLists.txt
ParseAST.cpp [clang-cl, PCH] Support for /Yc and /Yu without filename and #pragma hdrstop 2018-09-11 17:10:44 +00:00
ParseCXXInlineMethods.cpp [OpenCL] Add generic AS to 'this' pointer 2018-12-13 10:15:27 +00:00
ParseDecl.cpp Fix up diagnostics. 2018-12-14 03:35:10 +00:00
ParseDeclCXX.cpp Fix up diagnostics. 2018-12-14 03:35:10 +00:00
ParseExpr.cpp [CodeComplete] Fill preferred type on binary expressions 2018-12-13 16:06:11 +00:00
ParseExprCXX.cpp [CodeComplete] Cleanup access checking in code completion 2018-12-03 13:29:17 +00:00
ParseInit.cpp NFC: Remove the ObjC1/ObjC2 distinction from clang (and related projects) 2018-10-30 20:31:30 +00:00
ParseObjc.cpp NFC: Remove the ObjC1/ObjC2 distinction from clang (and related projects) 2018-10-30 20:31:30 +00:00
ParseOpenMP.cpp [OPENMP] parsing and sema support for 'close' map-type-modifier 2018-12-18 22:18:41 +00:00
ParsePragma.cpp Add support for namespaces on #pragma clang attribute 2018-12-20 22:32:04 +00:00
ParseStmt.cpp Move LoopHint.h from Sema to Parse 2018-11-28 04:36:31 +00:00
ParseStmtAsm.cpp
ParseTemplate.cpp [MS] Push outermost class DeclContexts only in -fdelayed-template-parsing 2018-11-27 21:20:42 +00:00
ParseTentative.cpp Fix clang -Wimplicit-fallthrough warnings across llvm, NFC 2018-11-01 19:54:45 +00:00
Parser.cpp Misc typos fixes in ./lib folder 2018-12-10 12:37:46 +00:00