diff options
-rw-r--r-- | lib/AST/ASTContext.cpp | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/lib/AST/ASTContext.cpp b/lib/AST/ASTContext.cpp index 76671576ce..2fc6a7d527 100644 --- a/lib/AST/ASTContext.cpp +++ b/lib/AST/ASTContext.cpp @@ -78,22 +78,12 @@ ASTContext::~ASTContext() { } // Destroy nested-name-specifiers. - llvm::SmallVector<NestedNameSpecifier *, 16> NestedNameSpecs; - { - for (llvm::FoldingSet<NestedNameSpecifier>::iterator - NNS = NestedNameSpecifiers.begin(), - NNSEnd = NestedNameSpecifiers.end(); - NNS != NNSEnd; - ++NNS) - NestedNameSpecs.push_back(&*NNS); - } - NestedNameSpecifiers.clear(); - for (llvm::SmallVector<NestedNameSpecifier *, 16>::iterator - NNS = NestedNameSpecs.begin(), - NNSEnd = NestedNameSpecs.end(); + for (llvm::FoldingSet<NestedNameSpecifier>::iterator + NNS = NestedNameSpecifiers.begin(), + NNSEnd = NestedNameSpecifiers.end(); NNS != NNSEnd; - ++NNS) - (*NNS)->Destroy(*this); + /* Increment in loop */) + (*NNS++).Destroy(*this); if (GlobalNestedNameSpecifier) GlobalNestedNameSpecifier->Destroy(*this); |