diff options
Diffstat (limited to 'include/clang')
-rw-r--r-- | include/clang/AST/Expr.h | 8 | ||||
-rw-r--r-- | include/clang/Frontend/PCHBitCodes.h | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/include/clang/AST/Expr.h b/include/clang/AST/Expr.h index cc6a0a6d61..2102126eb6 100644 --- a/include/clang/AST/Expr.h +++ b/include/clang/AST/Expr.h @@ -628,15 +628,23 @@ public: val->isTypeDependent(), val->isValueDependent()), L(l), R(r), Val(val) {} + /// \brief Construct an empty parenthesized expression. + explicit ParenExpr(EmptyShell Empty) + : Expr(ParenExprClass, Empty) { } + const Expr *getSubExpr() const { return cast<Expr>(Val); } Expr *getSubExpr() { return cast<Expr>(Val); } + void setSubExpr(Expr *E) { Val = E; } + virtual SourceRange getSourceRange() const { return SourceRange(L, R); } /// \brief Get the location of the left parentheses '('. SourceLocation getLParen() const { return L; } + void setLParen(SourceLocation Loc) { L = Loc; } /// \brief Get the location of the right parentheses ')'. SourceLocation getRParen() const { return R; } + void setRParen(SourceLocation Loc) { R = Loc; } static bool classof(const Stmt *T) { return T->getStmtClass() == ParenExprClass; diff --git a/include/clang/Frontend/PCHBitCodes.h b/include/clang/Frontend/PCHBitCodes.h index 66b800c577..f8af0208b0 100644 --- a/include/clang/Frontend/PCHBitCodes.h +++ b/include/clang/Frontend/PCHBitCodes.h @@ -383,6 +383,8 @@ namespace clang { EXPR_FLOATING_LITERAL, /// \brief A CharacterLiteral record. EXPR_CHARACTER_LITERAL, + /// \brief A ParenExpr record. + EXPR_PAREN, /// \brief An ImplicitCastExpr record. EXPR_IMPLICIT_CAST }; |