[Temporary] Add an ExprWithCleanups for each C++ MaterializeTemporaryExpr.
These ExprWithCleanups are added for holding a RunCleanupsScope not for destructor calls; rather, they are for lifetime marks. This requires ExprWithCleanups to keep a bit to indicate whether it have cleanups with side effects (e.g. dtor calls). Differential Revision: http://reviews.llvm.org/D20498 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272296 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/AST/ExprCXX.h 6 additions, 1 deletioninclude/clang/AST/ExprCXX.h
- include/clang/AST/Stmt.h 4 additions, 1 deletioninclude/clang/AST/Stmt.h
- include/clang/Sema/CleanupInfo.h 47 additions, 0 deletionsinclude/clang/Sema/CleanupInfo.h
- include/clang/Sema/ScopeInfo.h 3 additions, 2 deletionsinclude/clang/Sema/ScopeInfo.h
- include/clang/Sema/Sema.h 10 additions, 6 deletionsinclude/clang/Sema/Sema.h
- lib/AST/Expr.cpp 6 additions, 1 deletionlib/AST/Expr.cpp
- lib/AST/ExprCXX.cpp 5 additions, 1 deletionlib/AST/ExprCXX.cpp
- lib/Analysis/Consumed.cpp 6 additions, 0 deletionslib/Analysis/Consumed.cpp
- lib/CodeGen/CGExprConstant.cpp 6 additions, 0 deletionslib/CodeGen/CGExprConstant.cpp
- lib/Sema/Sema.cpp 3 additions, 2 deletionslib/Sema/Sema.cpp
- lib/Sema/SemaCast.cpp 4 additions, 4 deletionslib/Sema/SemaCast.cpp
- lib/Sema/SemaCoroutine.cpp 2 additions, 2 deletionslib/Sema/SemaCoroutine.cpp
- lib/Sema/SemaDecl.cpp 1 addition, 1 deletionlib/Sema/SemaDecl.cpp
- lib/Sema/SemaExpr.cpp 18 additions, 17 deletionslib/Sema/SemaExpr.cpp
- lib/Sema/SemaExprCXX.cpp 9 additions, 7 deletionslib/Sema/SemaExprCXX.cpp
- lib/Sema/SemaExprObjC.cpp 2 additions, 2 deletionslib/Sema/SemaExprObjC.cpp
- lib/Sema/SemaInit.cpp 23 additions, 7 deletionslib/Sema/SemaInit.cpp
- lib/Sema/SemaLambda.cpp 5 additions, 6 deletionslib/Sema/SemaLambda.cpp
- lib/Sema/SemaOpenMP.cpp 8 additions, 0 deletionslib/Sema/SemaOpenMP.cpp
- lib/Sema/SemaStmt.cpp 8 additions, 0 deletionslib/Sema/SemaStmt.cpp
Loading
Please register or sign in to comment