diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-03-11 07:17:35 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-03-11 07:17:35 +0000 |
commit | 52e3fbaee806bba55e2cbcf1e09f11ad78019611 (patch) | |
tree | 7c16d56dc656da5720f09aa7d4eb3bb74796dbd8 /clang/lib/Serialization/ASTReader.cpp | |
parent | 9140dd2fe773432aed5f8fb1ab166951b95e2900 (diff) | |
download | bcm5719-llvm-52e3fbaee806bba55e2cbcf1e09f11ad78019611.tar.gz bcm5719-llvm-52e3fbaee806bba55e2cbcf1e09f11ad78019611.zip |
Revert C++11ification in r203534 and r203536. Apparently our toolchains aren't
ready for this yet.
llvm-svn: 203548
Diffstat (limited to 'clang/lib/Serialization/ASTReader.cpp')
-rw-r--r-- | clang/lib/Serialization/ASTReader.cpp | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp index b35a27c27ff..24cb7a6ca42 100644 --- a/clang/lib/Serialization/ASTReader.cpp +++ b/clang/lib/Serialization/ASTReader.cpp @@ -457,14 +457,6 @@ ASTReader::setDeserializationListener(ASTDeserializationListener *Listener) { } -DeclContextInfo::DeclContextInfo() - : NameLookupTableData(), LexicalDecls(), NumLexicalDecls() {} - -void NameLookupTableDataDeleter:: -operator()(ASTDeclContextNameLookupTable *Ptr) const { - delete Ptr; -} - unsigned ASTSelectorLookupTrait::ComputeHash(Selector Sel) { return serialization::ComputeHash(Sel); @@ -844,10 +836,11 @@ bool ASTReader::ReadDeclContextStorage(ModuleFile &M, Error("Expected visible lookup table block"); return true; } - Info.NameLookupTableData.reset(ASTDeclContextNameLookupTable::Create( - (const unsigned char *)Blob.data() + Record[0], - (const unsigned char *)Blob.data(), - ASTDeclContextNameLookupTrait(*this, M))); + Info.NameLookupTableData + = ASTDeclContextNameLookupTable::Create( + (const unsigned char *)Blob.data() + Record[0], + (const unsigned char *)Blob.data(), + ASTDeclContextNameLookupTrait(*this, M)); } return false; @@ -2500,12 +2493,14 @@ bool ASTReader::ReadASTBlock(ModuleFile &F) { ASTDeclContextNameLookupTrait(*this, F)); if (ID == PREDEF_DECL_TRANSLATION_UNIT_ID) { // Is it the TU? DeclContext *TU = Context.getTranslationUnitDecl(); - F.DeclContextInfos[TU].NameLookupTableData.reset(Table); + F.DeclContextInfos[TU].NameLookupTableData = Table; TU->setHasExternalVisibleStorage(true); } else if (Decl *D = DeclsLoaded[ID - NUM_PREDEF_DECL_IDS]) { auto *DC = cast<DeclContext>(D); DC->getPrimaryContext()->setHasExternalVisibleStorage(true); - F.DeclContextInfos[DC].NameLookupTableData.reset(Table); + auto *&LookupTable = F.DeclContextInfos[DC].NameLookupTableData; + delete LookupTable; + LookupTable = Table; } else PendingVisibleUpdates[ID].push_back(std::make_pair(Table, &F)); break; @@ -6089,7 +6084,7 @@ namespace { return false; // Look for this name within this module. - const auto &LookupTable = + ASTDeclContextNameLookupTable *LookupTable = Info->second.NameLookupTableData; ASTDeclContextNameLookupTable::iterator Pos = LookupTable->find(This->Name); @@ -6219,7 +6214,7 @@ namespace { if (!FoundInfo) return false; - const auto &LookupTable = + ASTDeclContextNameLookupTable *LookupTable = Info->second.NameLookupTableData; bool FoundAnything = false; for (ASTDeclContextNameLookupTable::data_iterator |