summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExprCXX.cpp
diff options
context:
space:
mode:
authorSebastian Redl <sebastian.redl@getdesigned.at>2010-09-10 20:55:37 +0000
committerSebastian Redl <sebastian.redl@getdesigned.at>2010-09-10 20:55:37 +0000
commit22e3a93586c458e2038f7380e78b3f2fb39f660c (patch)
tree60bbba86f13fda9b26f812d8232aeac2b9cce3e7 /clang/lib/Sema/SemaExprCXX.cpp
parentce354af89558c9d60d3a95453a50170d517faffa (diff)
downloadbcm5719-llvm-22e3a93586c458e2038f7380e78b3f2fb39f660c.tar.gz
bcm5719-llvm-22e3a93586c458e2038f7380e78b3f2fb39f660c.zip
Parse the noexcept operator and stub out sema.
llvm-svn: 113622
Diffstat (limited to 'clang/lib/Sema/SemaExprCXX.cpp')
-rw-r--r--clang/lib/Sema/SemaExprCXX.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp
index d5b0afa4f61..7c9baa756b7 100644
--- a/clang/lib/Sema/SemaExprCXX.cpp
+++ b/clang/lib/Sema/SemaExprCXX.cpp
@@ -3114,6 +3114,17 @@ CXXMemberCallExpr *Sema::BuildCXXMemberCallExpr(Expr *Exp,
return CE;
}
+ExprResult Sema::ActOnNoexceptExpr(SourceLocation KeyLoc, SourceLocation LParen,
+ Expr *Operand, SourceLocation RParen) {
+ // C++ [expr.unary.noexcept]p1:
+ // The noexcept operator determines whether the evaluation of its operand,
+ // which is an unevaluated operand, can throw an exception.
+ ExprEvalContexts.back().Context = Unevaluated;
+
+//return Owned(new (Context) CXXNoexceptExpr(KeyLoc, LParen, Operand, RParen));
+ return ExprError();
+}
+
ExprResult Sema::ActOnFinishFullExpr(Expr *FullExpr) {
if (!FullExpr) return ExprError();
return MaybeCreateCXXExprWithTemporaries(FullExpr);
OpenPOWER on IntegriCloud