diff options
-rw-r--r-- | include/clang/AST/NestedNameSpecifier.h | 8 | ||||
-rw-r--r-- | lib/AST/NestedNameSpecifier.cpp | 8 |
2 files changed, 6 insertions, 10 deletions
diff --git a/include/clang/AST/NestedNameSpecifier.h b/include/clang/AST/NestedNameSpecifier.h index bda2d31fd5..228edc301d 100644 --- a/include/clang/AST/NestedNameSpecifier.h +++ b/include/clang/AST/NestedNameSpecifier.h @@ -339,14 +339,18 @@ class NestedNameSpecifierLocBuilder { unsigned BufferCapacity; public: - NestedNameSpecifierLocBuilder(); + NestedNameSpecifierLocBuilder() + : Representation(0), Buffer(0), BufferSize(0), BufferCapacity(0) { } NestedNameSpecifierLocBuilder(const NestedNameSpecifierLocBuilder &Other); NestedNameSpecifierLocBuilder & operator=(const NestedNameSpecifierLocBuilder &Other); - ~NestedNameSpecifierLocBuilder(); + ~NestedNameSpecifierLocBuilder() { + if (BufferCapacity) + free(Buffer); + } /// \brief Retrieve the representation of the nested-name-specifier. NestedNameSpecifier *getRepresentation() const { return Representation; } diff --git a/lib/AST/NestedNameSpecifier.cpp b/lib/AST/NestedNameSpecifier.cpp index c59d40a8c2..dbf267bd65 100644 --- a/lib/AST/NestedNameSpecifier.cpp +++ b/lib/AST/NestedNameSpecifier.cpp @@ -434,9 +434,6 @@ namespace { } } -NestedNameSpecifierLocBuilder::NestedNameSpecifierLocBuilder() - : Representation(0), Buffer(0), BufferSize(0), BufferCapacity(0) { } - NestedNameSpecifierLocBuilder:: NestedNameSpecifierLocBuilder(const NestedNameSpecifierLocBuilder &Other) : Representation(Other.Representation), Buffer(0), @@ -499,11 +496,6 @@ operator=(const NestedNameSpecifierLocBuilder &Other) { return *this; } -NestedNameSpecifierLocBuilder::~NestedNameSpecifierLocBuilder() { - if (BufferCapacity) - free(Buffer); -} - void NestedNameSpecifierLocBuilder::Extend(ASTContext &Context, SourceLocation TemplateKWLoc, TypeLoc TL, |