hanchenye-llvm-project/clang/lib/Serialization
Richard Smith 645d755d3e Fix handling of module imports adding names to a DeclContext after qualified
name lookup has been performed in that context (this probably only happens in
C++).

1) Whenever we add names to a context, set a flag on it, and if we perform
lookup and discover that the context has had a lookup table built but has the
flag set, update all entries in the lookup table with additional names from
the external source.

2) When marking a DeclContext as having external visible decls, mark the
context in which lookup is performed, not the one we are adding. These won't
be the same if we're adding another copy of a pre-existing namespace.

llvm-svn: 174577
2013-02-07 03:37:08 +00:00
..
ASTCommon.cpp Make getDefinitiveDeclContext() actually return a DeclContext, as one 2013-01-22 17:08:30 +00:00
ASTCommon.h Make getDefinitiveDeclContext() actually return a DeclContext, as one 2013-01-22 17:08:30 +00:00
ASTReader.cpp Simplify FindExternalVisibleDeclsByName by making it return a bool indicating 2013-02-07 03:30:24 +00:00
ASTReaderDecl.cpp Fix handling of module imports adding names to a DeclContext after qualified 2013-02-07 03:37:08 +00:00
ASTReaderInternals.h Remove dead code related to the now defunct PCH stat cache. 2013-02-05 06:21:59 +00:00
ASTReaderStmt.cpp Switch to APFloat constructor taking fltSemantics. 2013-01-22 09:46:51 +00:00
ASTWriter.cpp Remove dead code related to the now defunct PCH stat cache. 2013-02-05 06:21:59 +00:00
ASTWriterDecl.cpp Added outer template parameter lists to friend type AST nodes. 2013-01-31 09:54:08 +00:00
ASTWriterStmt.cpp Switch to APFloat constructor taking fltSemantics. 2013-01-22 09:46:51 +00:00
CMakeLists.txt Implement the writer side of the global module index. 2013-01-23 22:38:11 +00:00
GeneratePCH.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
GlobalModuleIndex.cpp Eliminate a race condition with the global module index. 2013-02-06 18:08:37 +00:00
Makefile
Module.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
ModuleManager.cpp Eliminate memory allocation from most invocations of 2013-01-28 16:46:33 +00:00