summaryrefslogtreecommitdiffstats
path: root/clang/lib/Serialization/ASTWriter.cpp
diff options
context:
space:
mode:
authorBen Langmuir <blangmuir@apple.com>2015-06-23 18:20:18 +0000
committerBen Langmuir <blangmuir@apple.com>2015-06-23 18:20:18 +0000
commitcd98cb731288722bf44204feb2f570caaec6617c (patch)
treeb479486484ae89a997628da14f56b261d048be68 /clang/lib/Serialization/ASTWriter.cpp
parentc78c2bcb2a005266d7c6982ed57accd394028153 (diff)
downloadbcm5719-llvm-cd98cb731288722bf44204feb2f570caaec6617c.tar.gz
bcm5719-llvm-cd98cb731288722bf44204feb2f570caaec6617c.zip
[Modules] Consider -fmodule-feature in module hash and when loading
Any extra features from -fmodule-feature are part of the module hash and need to get validated on load. Also print them with -module-file-info. llvm-svn: 240433
Diffstat (limited to 'clang/lib/Serialization/ASTWriter.cpp')
-rw-r--r--clang/lib/Serialization/ASTWriter.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp
index 5bb0bec4f56..d6267767cf4 100644
--- a/clang/lib/Serialization/ASTWriter.cpp
+++ b/clang/lib/Serialization/ASTWriter.cpp
@@ -1266,6 +1266,10 @@ void ASTWriter::WriteControlBlock(Preprocessor &PP, ASTContext &Context,
Record.push_back(LangOpts.Sanitize.has(SanitizerKind::ID));
#include "clang/Basic/Sanitizers.def"
+ Record.push_back(LangOpts.ModuleFeatures.size());
+ for (StringRef Feature : LangOpts.ModuleFeatures)
+ AddString(Feature, Record);
+
Record.push_back((unsigned) LangOpts.ObjCRuntime.getKind());
AddVersionTuple(LangOpts.ObjCRuntime.getVersion(), Record);
OpenPOWER on IntegriCloud