[modules] Remove redundant import of lexical decls when building a lookup table
authorRichard Smith <richard-llvm@metafoo.co.uk>
Mon, 23 Mar 2015 03:25:59 +0000 (03:25 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Mon, 23 Mar 2015 03:25:59 +0000 (03:25 +0000)
commit9e2341d0930b735b4ec91c389c736db3eda6ca4c
tree719addc46e4686382124735d4903d4aed289809d
parent1e1b0f732a5799cfcc92267ca43512b9dedeec8a
[modules] Remove redundant import of lexical decls when building a lookup table
for a DeclContext, and fix propagation of exception specifications along
redeclaration chains.

This reverts r232905, r232907, and r232907, which reverted r232793, r232853,
and r232853.

One additional change is present here to resolve issues with LLDB: distinguish
between whether lexical decls missing from the lookup table are local or are
provided by the external AST source, and still look in the external source if
that's where they came from.

llvm-svn: 232928
19 files changed:
clang/include/clang/AST/DeclBase.h
clang/include/clang/Serialization/ASTReader.h
clang/lib/AST/ASTContext.cpp
clang/lib/AST/DeclBase.cpp
clang/lib/Sema/IdentifierResolver.cpp
clang/lib/Sema/SemaExceptionSpec.cpp
clang/lib/Sema/SemaLookup.cpp
clang/lib/Serialization/ASTReader.cpp
clang/lib/Serialization/ASTReaderDecl.cpp
clang/lib/Serialization/ASTWriter.cpp
clang/test/Modules/Inputs/update-exception-spec/a.h [new file with mode: 0644]
clang/test/Modules/Inputs/update-exception-spec/b.h [new file with mode: 0644]
clang/test/Modules/Inputs/update-exception-spec/c.h [new file with mode: 0644]
clang/test/Modules/Inputs/update-exception-spec/module.modulemap [new file with mode: 0644]
clang/test/Modules/cxx-templates.cpp
clang/test/Modules/linkage-merge.cpp
clang/test/Modules/odr.cpp
clang/test/Modules/redecl-add-after-load.cpp
clang/test/Modules/update-exception-spec.cpp [new file with mode: 0644]