]> granicus.if.org Git - clang/commit
Switch NamespaceDecl from its own hand-rolled redeclaration chain over
authorDouglas Gregor <dgregor@apple.com>
Sat, 7 Jan 2012 09:11:48 +0000 (09:11 +0000)
committerDouglas Gregor <dgregor@apple.com>
Sat, 7 Jan 2012 09:11:48 +0000 (09:11 +0000)
commitf5c9f9fd6f5e2850b9b0f19283430245b696c6e5
treeeaf11351dbbffd667d8f3cbf539cf784d629e925
parent72899c34e3d1abfffa241ad0ce5c4bf175e5ea51
Switch NamespaceDecl from its own hand-rolled redeclaration chain over
to Redeclarable<NamespaceDecl>, so that we benefit from the improveed
redeclaration deserialization and merging logic provided by
Redeclarable<T>. Otherwise, no functionality change.

As a drive-by fix, collapse the "inline" bit into the low bit of the
original namespace/anonymous namespace, saving 8 bytes per
NamespaceDecl on x86_64.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147729 91177308-0d34-0410-b5e6-96231b3b80d8
14 files changed:
include/clang/AST/Decl.h
include/clang/AST/DeclBase.h
lib/AST/ASTImporter.cpp
lib/AST/DeclBase.cpp
lib/AST/DeclCXX.cpp
lib/Sema/SemaDeclCXX.cpp
lib/Sema/SemaLookup.cpp
lib/Serialization/ASTReaderDecl.cpp
lib/Serialization/ASTWriterDecl.cpp
test/Modules/Inputs/module.map
test/Modules/Inputs/namespaces-left.h [new file with mode: 0644]
test/Modules/Inputs/namespaces-right.h [new file with mode: 0644]
test/Modules/Inputs/namespaces-top.h [new file with mode: 0644]
test/Modules/namespaces.cpp [new file with mode: 0644]