summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/TreeTransform.h
diff options
context:
space:
mode:
authorJoao Matos <ripzonetriton@gmail.com>2012-09-02 03:45:41 +0000
committerJoao Matos <ripzonetriton@gmail.com>2012-09-02 03:45:41 +0000
commitc32a7e4d8e0b65aaac3fad61ee31f0296d592146 (patch)
tree7cd4d0343f1053e9ccbfd762c695970cd877cc54 /clang/lib/Sema/TreeTransform.h
parent6c8ac4d7fb671e0a3bc18358ff56888673b40cd3 (diff)
downloadbcm5719-llvm-c32a7e4d8e0b65aaac3fad61ee31f0296d592146.tar.gz
bcm5719-llvm-c32a7e4d8e0b65aaac3fad61ee31f0296d592146.zip
Implemented parsing and AST support for the MS __leave exception statement. Also a minor fix to __except printing in StmtPrinter.cpp. Thanks to Aaron Ballman for review.
llvm-svn: 163083
Diffstat (limited to 'clang/lib/Sema/TreeTransform.h')
-rw-r--r--clang/lib/Sema/TreeTransform.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h
index 19636f41438..10eb52a8907 100644
--- a/clang/lib/Sema/TreeTransform.h
+++ b/clang/lib/Sema/TreeTransform.h
@@ -1361,6 +1361,10 @@ public:
return getSema().ActOnSEHTryBlock(IsCXXTry,TryLoc,TryBlock,Handler);
}
+ StmtResult RebuildSEHLeaveStmt(SourceLocation LeaveLoc) {
+ return getSema().ActOnSEHLeaveStmt(LeaveLoc);
+ }
+
StmtResult RebuildSEHExceptStmt(SourceLocation Loc,
Expr *FilterExpr,
Stmt *Block) {
@@ -6001,6 +6005,12 @@ TreeTransform<Derived>::TransformSEHTryStmt(SEHTryStmt *S) {
template<typename Derived>
StmtResult
+TreeTransform<Derived>::TransformSEHLeaveStmt(SEHLeaveStmt *S) {
+ return getDerived().RebuildSEHLeaveStmt(S->getLeaveLoc());
+}
+
+template<typename Derived>
+StmtResult
TreeTransform<Derived>::TransformSEHFinallyStmt(SEHFinallyStmt *S) {
StmtResult Block; // = getDerived().TransformCompoundStatement(S->getBlock());
if(Block.isInvalid()) return StmtError();
OpenPOWER on IntegriCloud