Home | History | Annotate | Download | only in Sema

Lines Matching defs:EXPR

21 #include "clang/AST/Expr.h"
132 static inline ExprResult Owned(Expr *E) { return E; }
211 bool DropCallArgument(Expr *E) {
338 ExprResult TransformExpr(Expr *E);
347 ExprResult TransformInitializer(Expr *Init, bool CXXDirectInit);
372 bool TransformExprs(Expr **Inputs, unsigned NumInputs, bool IsCall,
373 SmallVectorImpl<Expr *> &Outputs,
606 ExprResult TransformAddressOfOperand(Expr *E);
623 #define EXPR(Node, Parent) \
676 Expr *SizeExpr,
708 Expr *SizeExpr,
719 Expr *SizeExpr,
745 Expr *SizeExpr,
778 /// \brief Build a new typeof(expr) type.
782 QualType RebuildTypeOfExprType(Expr *Underlying, SourceLocation Loc);
798 QualType RebuildDecltypeType(Expr *Underlying, SourceLocation Loc);
1065 Expr *LHS,
1067 Expr *RHS,
1127 Expr *Cond, VarDecl *CondVar) {
1156 Expr *Cond, SourceLocation RParenLoc) {
1188 Expr *Target) {
1196 StmtResult RebuildReturnStmt(SourceLocation ReturnLoc, Expr *Result) {
1218 Expr *AsmString, MultiExprArg Clobbers,
1235 ArrayRef<Expr*> Exprs,
1292 Expr *Operand) {
1313 OMPClause *RebuildOMPIfClause(Expr *Condition,
1325 OMPClause *RebuildOMPNumThreadsClause(Expr *NumThreads,
1337 OMPClause *RebuildOMPSafelenClause(Expr *Len, SourceLocation StartLoc,
1347 OMPClause *RebuildOMPCollapseClause(Expr *Num, SourceLocation StartLoc,
1385 Expr *ChunkSize,
1399 OMPClause *RebuildOMPPrivateClause(ArrayRef<Expr *> VarList,
1411 OMPClause *RebuildOMPFirstprivateClause(ArrayRef<Expr *> VarList,
1423 OMPClause *RebuildOMPLastprivateClause(ArrayRef<Expr *> VarList,
1435 OMPClause *RebuildOMPSharedClause(ArrayRef<Expr *> VarList,
1447 OMPClause *RebuildOMPReductionClause(ArrayRef<Expr *> VarList,
1463 OMPClause *RebuildOMPLinearClause(ArrayRef<Expr *> VarList, Expr *Step,
1476 OMPClause *RebuildOMPAlignedClause(ArrayRef<Expr *> VarList, Expr *Alignment,
1489 OMPClause *RebuildOMPCopyinClause(ArrayRef<Expr *> VarList,
1501 OMPClause *RebuildOMPCopyprivateClause(ArrayRef<Expr *> VarList,
1514 Expr *object) {
1523 Expr *Object, Stmt *Body) {
1542 Expr *Collection,
1598 Expr *Cond, Expr *Inc,
1609 Expr *RangeExpr = RangeVar->getInit();
1649 StmtResult RebuildSEHExceptStmt(SourceLocation Loc, Expr *FilterExpr,
1689 ExprResult RebuildParenExpr(Expr *SubExpr, SourceLocation LParen,
1698 ExprResult RebuildCXXPseudoDestructorExpr(Expr *Base,
1713 Expr *SubExpr) {
1747 ExprResult RebuildUnaryExprOrTypeTrait(Expr *SubExpr, SourceLocation OpLoc,
1762 ExprResult RebuildArraySubscriptExpr(Expr *LHS,
1764 Expr *RHS,
1775 ExprResult RebuildCallExpr(Expr *Callee, SourceLocation LParenLoc,
1778 Expr *ExecConfig = nullptr) {
1787 Expr *Base, SourceLocation OpLoc,
1846 Expr *LHS, Expr *RHS) {
1854 ExprResult RebuildConditionalOperator(Expr *Cond,
1856 Expr *LHS,
1858 Expr *RHS) {
1870 Expr *SubExpr) {
1882 Expr *Init) {
1891 ExprResult RebuildExtVectorElementExpr(Expr *Base,
1921 InitListExpr *ILE = cast<InitListExpr>((Expr *)Result.get());
1934 Expr *Init) {
1958 Expr *SubExpr, TypeSourceInfo *TInfo,
2000 Expr *Cond, Expr *LHS, Expr *RHS,
2014 Expr *ControllingExpr,
2016 ArrayRef<Expr *> Exprs) {
2031 Expr *Callee,
2032 Expr *First,
2033 Expr *Second);
2047 Expr *SubExpr,
2085 Expr *SubExpr,
2102 Expr *SubExpr,
2119 Expr
2136 Expr *SubExpr,
2150 Expr *Sub,
2170 /// \brief Build a new C++ typeid(expr) expression.
2176 Expr *Operand,
2194 /// \brief Build a new C++ __uuidof(expr) expression.
2200 Expr *Operand,
2222 ExprResult RebuildCXXThrowExpr(SourceLocation ThrowLoc, Expr *Sub,
2270 Expr *ArraySize,
2272 Expr *Initializer) {
2292 Expr *Operand) {
2315 Expr *DimExpr,
2326 Expr *Queried,
2381 SmallVector<Expr*, 8> ConvertedArgs;
2426 ExprResult RebuildCXXDependentScopeMemberExpr(Expr *BaseE,
2450 ExprResult RebuildUnresolvedMemberExpr(Expr
2472 ExprResult RebuildCXXNoexceptExpr(SourceRange Range, Expr *Arg) {
2495 ExprResult RebuildObjCBoxedExpr(SourceRange SR, Expr *ValueExpr) {
2504 Expr **Elements, unsigned NumElements) {
2510 Expr *Base, Expr *Key,
2553 ExprResult RebuildObjCMessageExpr(Expr *Receiver,
2571 ExprResult RebuildObjCIvarRefExpr(Expr *BaseArg, ObjCIvarDecl *Ivar,
2589 ExprResult RebuildObjCPropertyRefExpr(Expr *BaseArg,
2607 ExprResult RebuildObjCPropertyRefExpr(Expr *Base, QualType T,
2623 ExprResult RebuildObjCIsaExpr(Expr *BaseArg, SourceLocation IsaLoc,
2651 Expr *Callee = new (SemaRef.Context) DeclRefExpr(Builtin, false,
2661 Expr::getValueKindForType(Builtin->getReturnType()), RParenLoc);
2669 Expr *SrcExpr, TypeSourceInfo *DstTInfo,
2728 ExprResult RebuildPackExpansion(Expr *Pattern, SourceLocation EllipsisLoc,
2777 #define EXPR(Node, Parent)
2783 #define EXPR(Node, Parent) case Stmt::Node##Class:
2786 ExprResult E = getDerived().TransformExpr(cast<Expr>(S));
2816 ExprResult TreeTransform<Derived>::TransformExpr(Expr *E) {
2824 #define EXPR(Node, Parent) \
2833 ExprResult TreeTransform<Derived>::TransformInitializer(Expr *Init,
2880 SmallVector<Expr*, 8> NewArgs;
2899 bool TreeTransform<Derived>::TransformExprs(Expr **Inputs,
2902 SmallVectorImpl<Expr *> &Outputs,
2914 Expr *Pattern = Expansion->getPattern();
3357 Expr *InputExpr = Input.getSourceExpression();
4006 Expr *Size = TL.getSizeExpr();
4010 Size = getDerived().TransformExpr(Size).template getAs<Expr>();
4060 Expr *Size = SizeResult.get();
4099 Expr *origSize = TL.getSizeExpr();
4108 Expr *size = sizeResult.get();
4508 // C++11 [expr.prim.general]p3:
5823 SmallVector<Expr*, 8> Constraints;
5824 SmallVector<Expr*, 8> Exprs;
5828 SmallVector<Expr*, 8> Clobbers;
5839 // Transform the output expr.
5840 Expr *OutputExpr = S->getOutputExpr(I);
5857 // Transform the input expr.
5858 Expr *InputExpr = S->getInputExpr(I);
5892 ArrayRef<Expr*> SrcExprs = S->getAllExprs();
5893 SmallVector<Expr*, 8> TransformedExprs;
6594 llvm::SmallVector<Expr *, 16> Vars;
6597 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6609 llvm::SmallVector<Expr *, 16> Vars;
6612 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6624 llvm::SmallVector<Expr *, 16> Vars;
6627 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6639 llvm::SmallVector<Expr *, 16> Vars;
6642 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6654 llvm::SmallVector<Expr *, 16> Vars;
6657 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6679 llvm::SmallVector<Expr *, 16> Vars;
6682 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6698 llvm::SmallVector<Expr *, 16> Vars;
6701 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6717 llvm::SmallVector<Expr *, 16> Vars;
6720 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6732 llvm::SmallVector<Expr *, 16> Vars;
6735 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE));
6851 SmallVector<Expr *, 4> AssocExprs;
6897 TreeTransform<Derived>::TransformAddressOfOperand(Expr *E) {
6949 Expr *FromIndex = E->getIndexExpr(ON.getArrayExprIndex());
7006 Expr *newSyntacticForm = SemaRef.recreateSyntacticForm(E);
7038 // C++0x [expr.sizeof]p1:
7104 SmallVector<Expr*, 8> Args;
7116 = ((Expr *)Callee.get())->getSourceRange().getBegin();
7366 SmallVector<Expr*, 4> Inits;
7389 SmallVector<Expr*, 4> ArrayExprs;
7489 SmallVector<Expr*, 4> Inits;
7592 static_cast<Expr *>(Object.get())->getLocEnd());
7595 SmallVector<Expr*, 8> Args;
7677 SmallVector<Expr*, 8> Args;
7689 = ((Expr *)Callee.get())->getSourceRange().getBegin();
7952 SmallVector<Expr*, 8> PlacementArgs;
7959 Expr *OldInit = E->getInitializer();
8450 // We got an expr, wrap it up in parens.
8536 SmallVector<Expr*, 8> Args;
8598 SmallVector<Expr*, 8> Args;
8643 Expr *NewExprInit = NewExprInitResult.get();
8914 SmallVector<Expr*, 8> Args;
8937 ExprResult Base((Expr*) nullptr);
8938 Expr *OldBase;
8959 BaseType = ((Expr*) Base.get())->getType();
9037 ExprResult Base((Expr*) nullptr);
9270 SmallVector<Expr *, 8> Elements;
9463 SmallVector<Expr*, 8> Args;
9628 SmallVector<Expr*, 8> SubExprs;
9749 SmallVector<Expr*, 8> SubExprs;
9804 Expr *SizeExpr,
9860 Expr *SizeExpr,
9872 Expr *SizeExpr,
9903 Expr *SizeExpr,
9950 QualType TreeTransform<Derived>::RebuildTypeOfExprType(Expr *E,
9961 QualType TreeTransform<Derived>::RebuildDecltypeType(Expr *E,
10039 Expr *OrigCallee,
10040 Expr *First,
10041 Expr *Second) {
10042 Expr *Callee = OrigCallee->IgnoreParenCasts();
10114 Expr *Args[2] = { First, Second };
10155 TreeTransform<Derived>::RebuildCXXPseudoDestructorExpr(Expr *Base,