]> granicus.if.org Git - clang/commitdiff
Get rid of CXXDestroyExpr.
authorAnders Carlsson <andersca@mac.com>
Fri, 1 May 2009 22:21:22 +0000 (22:21 +0000)
committerAnders Carlsson <andersca@mac.com>
Fri, 1 May 2009 22:21:22 +0000 (22:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70586 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/AST/StmtNodes.def
lib/AST/ExprCXX.cpp
lib/AST/StmtPrinter.cpp

index eb518291650304f2d30ff91bf5d7ed9e4607c010..71dd77b4e544e0109b4ce7e513acb2be54a16c26 100644 (file)
@@ -118,7 +118,6 @@ STMT(UnresolvedFunctionNameExpr , Expr)
 STMT(UnaryTypeTraitExpr     , Expr)
 STMT(QualifiedDeclRefExpr   , DeclRefExpr)
 STMT(UnresolvedDeclRefExpr  , Expr)
-STMT(CXXDestroyExpr         , Expr)
 STMT(CXXConstructExpr       , Expr)
 STMT(CXXExprWithTemporaries , Expr)
 STMT(CXXTemporaryObjectExpr , CXXConstructExpr)
index c28086147feb1db80131c4783ac8e6402b7f8b6a..b05bf7d4ac72d492c70cd64ea7a3f887619f0786 100644 (file)
@@ -267,13 +267,6 @@ void CXXConstructExpr::Destroy(ASTContext &C) {
   C.Deallocate(this);
 }
 
-CXXDestroyExpr *CXXDestroyExpr::Create(ASTContext &C, VarDecl *vd) {
-  assert((vd->getKind() == Decl::CXXTempVar || vd->getKind() == Decl::Var) &&
-         "Can only create a destroy expr with a temp var decl or a var decl!");
-
-  return new (C) CXXDestroyExpr(vd, C.VoidTy);
-}
-
 CXXExprWithTemporaries::CXXExprWithTemporaries(Expr *subexpr, 
                                                CXXTempVarDecl **decls, 
                                                unsigned numdecls)
@@ -299,15 +292,12 @@ Stmt::child_iterator CXXConstructExpr::child_end() {
   return &Args[0]+NumArgs;
 }
 
-// CXXDestroyExpr
-Stmt::child_iterator CXXDestroyExpr::child_begin() { 
-  return child_iterator();
-}
-Stmt::child_iterator CXXDestroyExpr::child_end() {
-  return child_iterator();
+// CXXExprWithTemporaries
+Stmt::child_iterator CXXExprWithTemporaries::child_begin() {
+  return &SubExpr;
 }
 
-// CXXExprWithTemporaries
-Stmt::child_iterator CXXExprWithTemporaries::child_begin() { return &SubExpr; }
-Stmt::child_iterator CXXExprWithTemporaries::child_end() { return &SubExpr + 1;}
+Stmt::child_iterator CXXExprWithTemporaries::child_end() { 
+  return &SubExpr + 1;
+}
 
index c083efac9bf3e81b6c296545ae1d45663b9eba2b..0f8284a2eb5c215bbb112e2882c84f7930e441ed 100644 (file)
@@ -1101,10 +1101,6 @@ void StmtPrinter::VisitCXXConstructExpr(CXXConstructExpr *E) {
   // Nothing to print.
 }
 
-void StmtPrinter::VisitCXXDestroyExpr(CXXDestroyExpr *E) {
-  // Nothing to print.
-}
-
 void StmtPrinter::VisitCXXExprWithTemporaries(CXXExprWithTemporaries *E) {
   // Just forward to the sub expression.
   PrintExpr(E->getSubExpr());