From a0fc55f3e9d7d7aa8761d0a9726033947d0d6bc0 Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Tue, 13 Jan 2009 19:47:12 +0000 Subject: [PATCH] Turn off some Destroy calls that are currenly causing double-destruction of ScopedDecls. We will re-enable this later, when we have time to fully solve the ownership issue. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62175 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/AST/DeclBase.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/AST/DeclBase.cpp b/lib/AST/DeclBase.cpp index 8eb52b722d..7363bd0247 100644 --- a/lib/AST/DeclBase.cpp +++ b/lib/AST/DeclBase.cpp @@ -332,6 +332,9 @@ void Decl::swapAttrs(Decl *RHS) { void Decl::Destroy(ASTContext& C) { +#if 0 + // FIXME: This causes double-destroys in some cases, so it is + // disabled at the moment. if (ScopedDecl* SD = dyn_cast(this)) { // Observe the unrolled recursion. By setting N->NextDeclarator = 0x0 @@ -347,7 +350,8 @@ void Decl::Destroy(ASTContext& C) { N = Tmp; } } - +#endif + this->~Decl(); C.getAllocator().Deallocate((void *)this); } -- 2.40.0