diff options
author | Douglas Gregor <dgregor@apple.com> | 2011-12-02 23:42:12 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2011-12-02 23:42:12 +0000 |
commit | bcfc7d02293691a1050b76be2c99e008469644f9 (patch) | |
tree | c3384c75ffc01d79696207ff4aadb3bf4f237535 /clang/lib/Lex | |
parent | 9dff9f4c41b2cea20d3a268307424d57583f5890 (diff) | |
download | bcm5719-llvm-bcfc7d02293691a1050b76be2c99e008469644f9.tar.gz bcm5719-llvm-bcfc7d02293691a1050b76be2c99e008469644f9.zip |
When we treat an #include or #import as a module import, create an
implicit ImportDecl in the translation unit to record the presence of
the import.
llvm-svn: 145727
Diffstat (limited to 'clang/lib/Lex')
-rw-r--r-- | clang/lib/Lex/PPDirectives.cpp | 3 | ||||
-rw-r--r-- | clang/lib/Lex/Preprocessor.cpp | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Lex/PPDirectives.cpp b/clang/lib/Lex/PPDirectives.cpp index 836d21b2047..b44a0a2934f 100644 --- a/clang/lib/Lex/PPDirectives.cpp +++ b/clang/lib/Lex/PPDirectives.cpp @@ -1363,7 +1363,8 @@ void Preprocessor::HandleIncludeDirective(SourceLocation HashLoc, // If this was an #__include_macros directive, only make macros visible. Module::NameVisibilityKind Visibility = (IncludeKind == 3)? Module::MacrosVisible : Module::AllVisible; - TheModuleLoader.loadModule(IncludeTok.getLocation(), Path, Visibility); + TheModuleLoader.loadModule(IncludeTok.getLocation(), Path, Visibility, + /*IsIncludeDirective=*/true); return; } diff --git a/clang/lib/Lex/Preprocessor.cpp b/clang/lib/Lex/Preprocessor.cpp index 6cf34e226af..dea7efc7658 100644 --- a/clang/lib/Lex/Preprocessor.cpp +++ b/clang/lib/Lex/Preprocessor.cpp @@ -599,7 +599,8 @@ void Preprocessor::LexAfterModuleImport(Token &Result) { // If we have a non-empty module path, load the named module. if (!ModuleImportPath.empty()) (void)TheModuleLoader.loadModule(ModuleImportLoc, ModuleImportPath, - Module::MacrosVisible); + Module::MacrosVisible, + /*IsIncludeDirective=*/false); } void Preprocessor::AddCommentHandler(CommentHandler *Handler) { |