[cfe-commits] r69954 - in /cfe/trunk: include/clang/AST/ExprCXX.h lib/AST/ExprCXX.cpp

Anders Carlsson andersca at mac.com
Thu Apr 23 22:04:04 PDT 2009


Author: andersca
Date: Fri Apr 24 00:04:04 2009
New Revision: 69954

URL: http://llvm.org/viewvc/llvm-project?rev=69954&view=rev
Log:
Make the CXXConstructExpr public and add a StmtClass to it. No functionality change.

Modified:
    cfe/trunk/include/clang/AST/ExprCXX.h
    cfe/trunk/lib/AST/ExprCXX.cpp

Modified: cfe/trunk/include/clang/AST/ExprCXX.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/ExprCXX.h?rev=69954&r1=69953&r2=69954&view=diff

==============================================================================
--- cfe/trunk/include/clang/AST/ExprCXX.h (original)
+++ cfe/trunk/include/clang/AST/ExprCXX.h Fri Apr 24 00:04:04 2009
@@ -379,7 +379,6 @@
   virtual child_iterator child_end();
 };
 
-
 /// CXXConstructExpr - Represents a call to a C++ constructor.
 class CXXConstructExpr : public Expr {
   VarDecl *VD;
@@ -390,11 +389,13 @@
   Stmt **Args;
   unsigned NumArgs;
 
-  CXXConstructExpr(ASTContext &C, VarDecl *vd, QualType T, 
-                   CXXConstructorDecl *d, bool elidable,
-                   Expr **args, unsigned numargs);
   ~CXXConstructExpr() { } 
   
+protected:
+  CXXConstructExpr(ASTContext &C, StmtClass SC, VarDecl *vd, QualType T, 
+                   CXXConstructorDecl *d, bool elidable,
+                   Expr **args, unsigned numargs);
+
 public:
   static CXXConstructExpr *Create(ASTContext &C, VarDecl *VD, QualType T,
                                   CXXConstructorDecl *D, bool Elidable, 

Modified: cfe/trunk/lib/AST/ExprCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ExprCXX.cpp?rev=69954&r1=69953&r2=69954&view=diff

==============================================================================
--- cfe/trunk/lib/AST/ExprCXX.cpp (original)
+++ cfe/trunk/lib/AST/ExprCXX.cpp Fri Apr 24 00:04:04 2009
@@ -258,14 +258,15 @@
                                            QualType T, CXXConstructorDecl *D,  
                                            bool Elidable,
                                            Expr **Args, unsigned NumArgs) {
-  return new (C) CXXConstructExpr(C, VD, T, D, Elidable, Args, NumArgs);
+  return new (C) CXXConstructExpr(C, CXXConstructExprClass, VD, T, D, Elidable, 
+                                  Args, NumArgs);
 }
 
-CXXConstructExpr::CXXConstructExpr(ASTContext &C, VarDecl *vd, 
+CXXConstructExpr::CXXConstructExpr(ASTContext &C, StmtClass SC, VarDecl *vd, 
                                    QualType T, CXXConstructorDecl *D, 
                                    bool elidable,
                                    Expr **args, unsigned numargs) 
-: Expr(CXXConstructExprClass, T,
+: Expr(SC, T,
        T->isDependentType(),
        (T->isDependentType() ||
         CallExpr::hasAnyValueDependentArguments(args, numargs))),





More information about the cfe-commits mailing list