Implement support for wildcard exports in modules, allowing a module
to re-export anything that it imports. This opt-in feature makes a
module behave more like a header, because it can be used to re-export
the transitive closure of a (sub)module's dependencies.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145811 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Serialization/ASTWriter.cpp b/lib/Serialization/ASTWriter.cpp
index f48d18c..3e91e55 100644
--- a/lib/Serialization/ASTWriter.cpp
+++ b/lib/Serialization/ASTWriter.cpp
@@ -1957,7 +1957,8 @@
Record.clear();
for (unsigned I = 0, N = Mod->Exports.size(); I != N; ++I) {
unsigned ExportedID = SubmoduleIDs[Mod->Exports[I].getPointer()];
- assert(ExportedID && "Unknown submodule!");
+ assert((ExportedID || !Mod->Exports[I].getPointer()) &&
+ "Unknown submodule!");
Record.push_back(ExportedID);
Record.push_back(Mod->Exports[I].getInt());
}