Major anonymous union/struct redesign.
commit34e757f1c27cd375b6fa40bf3dbda2aedddcca18
authorFrancois Pichet <pichet2000@gmail.com>
Sun, 21 Nov 2010 06:08:52 +0000 (21 06:08 +0000)
committerFrancois Pichet <pichet2000@gmail.com>
Sun, 21 Nov 2010 06:08:52 +0000 (21 06:08 +0000)
tree0def875d14aa76bd01d54b4ebb9a41db1007c6a7
parent31011b633dc697a3a287a81f96a74368a64eda96
Major anonymous union/struct redesign.
A new AST node is introduced:
   def IndirectField : DDecl<Value>;
IndirectFields are injected into the anonymous's parent scope and chain back to
the original field. Name lookup for anonymous entities now result in an
IndirectFieldDecl instead of a FieldDecl.
There is no functionality change, the code generated should be the same.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119919 91177308-0d34-0410-b5e6-96231b3b80d8
17 files changed:
include/clang/AST/Decl.h
include/clang/AST/RecursiveASTVisitor.h
include/clang/Basic/DeclNodes.td
include/clang/Sema/Sema.h
include/clang/Sema/Template.h
include/clang/Serialization/ASTBitCodes.h
lib/AST/ASTImporter.cpp
lib/AST/Decl.cpp
lib/AST/DeclBase.cpp
lib/AST/ExprClassification.cpp
lib/Sema/SemaDecl.cpp
lib/Sema/SemaDeclCXX.cpp
lib/Sema/SemaExpr.cpp
lib/Sema/SemaInit.cpp
lib/Sema/SemaTemplateInstantiateDecl.cpp
lib/Serialization/ASTReaderDecl.cpp
lib/Serialization/ASTWriterDecl.cpp