diff options
author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2017-08-10 15:16:24 +0000 |
---|---|---|
committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2017-08-10 15:16:24 +0000 |
commit | fca5abc9d23354a98562b55f4ee80347c7ae2c6a (patch) | |
tree | 20f2c6fbe3bcb86307939aaf13202678f57ee762 /clang/lib/Lex/HeaderSearch.cpp | |
parent | 926e2d39bf3862200586fbb061afb3121391dfc2 (diff) | |
download | llvm-fca5abc9d23354a98562b55f4ee80347c7ae2c6a.zip llvm-fca5abc9d23354a98562b55f4ee80347c7ae2c6a.tar.gz llvm-fca5abc9d23354a98562b55f4ee80347c7ae2c6a.tar.bz2 |
[Modules] Prevent #import to reenter header if not building a module.
When non-modular headers are imported while not building a module but
in -fmodules mode, be conservative and preserve the default #import
semantic: do not reenter headers.
rdar://problem/33745031
llvm-svn: 310605
Diffstat (limited to 'clang/lib/Lex/HeaderSearch.cpp')
-rw-r--r-- | clang/lib/Lex/HeaderSearch.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Lex/HeaderSearch.cpp b/clang/lib/Lex/HeaderSearch.cpp index 1ebcc0a..4b5df8c 100644 --- a/clang/lib/Lex/HeaderSearch.cpp +++ b/clang/lib/Lex/HeaderSearch.cpp @@ -1143,7 +1143,7 @@ bool HeaderSearch::ShouldEnterIncludeFile(Preprocessor &PP, // headers find in the wild might rely only on #import and do not contain // controlling macros, be conservative and only try to enter textual headers // if such macro is present. - if (!FileInfo.isModuleHeader && + if (FileInfo.isCompilingModuleHeader && !FileInfo.isModuleHeader && FileInfo.getControllingMacro(ExternalLookup)) TryEnterHdr = true; return TryEnterHdr; |