Module [extern_c] attribute: inherit to submodules, don't write 'extern "C"'

blocks when building in C mode, and serialize and deserialize the attribute.

llvm-svn: 203317
This commit is contained in:
Richard Smith
2014-03-08 00:03:56 +00:00
parent 7f928f14f4
commit 9bca298f6d
9 changed files with 41 additions and 16 deletions

View File

@@ -37,6 +37,8 @@ Module::Module(StringRef Name, SourceLocation DefinitionLoc, Module *Parent,
IsAvailable = false;
if (Parent->IsSystem)
IsSystem = true;
if (Parent->IsExternC)
IsExternC = true;
Parent->SubModuleIndex[Name] = Parent->SubModules.size();
Parent->SubModules.push_back(this);