]> granicus.if.org Git - clang/commit
Implement cross-module declaration merging for tag declarations, so
authorDouglas Gregor <dgregor@apple.com>
Tue, 3 Jan 2012 22:46:00 +0000 (22:46 +0000)
committerDouglas Gregor <dgregor@apple.com>
Tue, 3 Jan 2012 22:46:00 +0000 (22:46 +0000)
commit1ca4a5c41b8707b5fafcd1af1c9824b1bb19a399
treed889d80a3fd82b5669bde44f3e4bbf53f01e31e3
parent5a15d92206f8ef357c49d6993a6ec4a85bde7b8f
Implement cross-module declaration merging for tag declarations, so
that if two modules A and B both contain a declaration of a tag such
as

  struct X;

and those two modules are unrelated, the two declarations of X will be
merged into a single redeclaration chain.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147488 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Serialization/ASTReaderDecl.cpp
test/Modules/Inputs/redecl-merge-bottom.h
test/Modules/Inputs/redecl-merge-left.h
test/Modules/Inputs/redecl-merge-right.h
test/Modules/Inputs/redecl-merge-top.h
test/Modules/redecl-merge.m