diff options
author | Ben Langmuir <blangmuir@apple.com> | 2014-04-18 22:07:31 +0000 |
---|---|---|
committer | Ben Langmuir <blangmuir@apple.com> | 2014-04-18 22:07:31 +0000 |
commit | ec8c975214ceb9f59301e2abcd084fcdff06fbcd (patch) | |
tree | 52c5c5952a7ba7061df3421293c7679fa5a32193 /clang/lib/Basic/Module.cpp | |
parent | b5d368e838934c1347063a20302acb0afea5f3ab (diff) | |
download | bcm5719-llvm-ec8c975214ceb9f59301e2abcd084fcdff06fbcd.tar.gz bcm5719-llvm-ec8c975214ceb9f59301e2abcd084fcdff06fbcd.zip |
Don't build modules with (submodules with) missing headers
Unless they are in submodules that aren't available anyway, due to
requirements not being met. Also, mark children as unavailable when the
parent is.
llvm-svn: 206664
Diffstat (limited to 'clang/lib/Basic/Module.cpp')
-rw-r--r-- | clang/lib/Basic/Module.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Basic/Module.cpp b/clang/lib/Basic/Module.cpp index d5c02d84058..6f29fae03a5 100644 --- a/clang/lib/Basic/Module.cpp +++ b/clang/lib/Basic/Module.cpp @@ -160,6 +160,11 @@ void Module::addRequirement(StringRef Feature, bool RequiredState, if (hasFeature(Feature, LangOpts, Target) == RequiredState) return; + IsMissingRequirement = true; + markUnavailable(); +} + +void Module::markUnavailable() { if (!IsAvailable) return; |