aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Lex/ModuleLoader.h
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-12-02 23:42:12 +0000
committerDouglas Gregor <dgregor@apple.com>2011-12-02 23:42:12 +0000
commit93ebfa6139bbca4d446c7343e3afc8e5ec777484 (patch)
tree1f87bec9019dc12c7cff57ff34856cf71334ce93 /include/clang/Lex/ModuleLoader.h
parent15de72cf580840c61e5704c2f8a2b56f9d0638e1 (diff)
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145727 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Lex/ModuleLoader.h')
-rw-r--r--include/clang/Lex/ModuleLoader.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/clang/Lex/ModuleLoader.h b/include/clang/Lex/ModuleLoader.h
index 0bd97b6bd4..b2fb722b94 100644
--- a/include/clang/Lex/ModuleLoader.h
+++ b/include/clang/Lex/ModuleLoader.h
@@ -48,10 +48,15 @@ public:
/// \param Visibility The visibility provided for the names in the loaded
/// module.
///
+ /// \param IsInclusionDirective Indicates that this module is being loaded
+ /// implicitly, due to the presence of an inclusion directive. Otherwise,
+ /// it is being loaded due to an import declaration.
+ ///
/// \returns If successful, returns the loaded module. Otherwise, returns
/// NULL to indicate that the module could not be loaded.
virtual Module *loadModule(SourceLocation ImportLoc, ModuleIdPath Path,
- Module::NameVisibilityKind Visibility) = 0;
+ Module::NameVisibilityKind Visibility,
+ bool IsInclusionDirective) = 0;
};
}