Home | History | Annotate | Download | only in Sema

Lines Matching defs:IsArrow

458                                bool IsArrow, SourceLocation OpLoc,
473 if (!IsArrow) {
491 Context, BaseExpr, BaseType, IsArrow, OpLoc,
617 SourceLocation OpLoc, bool IsArrow,
702 BaseExpr, BaseExpr->getType(), OpLoc, IsArrow, SS, SourceLocation(),
711 ExprResult &BaseExpr, bool &IsArrow,
717 SourceLocation OpLoc, bool IsArrow,
728 IsArrow, OpLoc,
738 if (IsArrow) RecordTy = RecordTy->getAs<PointerType>()->getPointeeType();
740 RecordTy->getAs<RecordType>(), OpLoc, IsArrow,
750 *this, R, BaseResult, IsArrow, OpLoc, SS,
769 OpLoc, IsArrow, SS, TemplateKWLoc,
775 BuildFieldReferenceExpr(Sema &S, Expr *BaseExpr, bool IsArrow,
886 BuildFieldReferenceExpr(*this, result, /*isarrow*/ false,
895 BuildMSPropertyRefExpr(Sema &S, Expr *BaseExpr, bool IsArrow,
901 return new (S.Context) MSPropertyRefExpr(BaseExpr, PD, IsArrow,
909 Sema &SemaRef, ASTContext &C, Expr *Base, bool isArrow,
914 assert((!isArrow || Base->isRValue()) && "-> base must be a pointer rvalue");
916 C, Base, isArrow, OpLoc, SS.getWithLocInContext(C), TemplateKWLoc, Member,
962 SourceLocation OpLoc, bool IsArrow,
972 if (IsArrow) {
1051 if (!IsArrow && BaseExpr) {
1104 IsArrow, OpLoc,
1156 return BuildFieldReferenceExpr(*this, BaseExpr, IsArrow, OpLoc, SS, FD,
1160 return BuildMSPropertyRefExpr(*this, BaseExpr, IsArrow, SS, PD,
1171 return BuildMemberExpr(*this, Context, BaseExpr, IsArrow, OpLoc, SS,
1188 return BuildMemberExpr(*this, Context, BaseExpr, IsArrow, OpLoc, SS,
1195 return BuildMemberExpr(*this, Context, BaseExpr, IsArrow, OpLoc, SS,
1202 return BuildMemberExpr(*this, Context, BaseExpr, IsArrow, OpLoc, SS,
1212 << MemberName << BaseType << int(IsArrow);
1215 << MemberName << BaseType << int(IsArrow);
1266 Sema::PerformMemberExprBaseConversion(Expr *Base, bool IsArrow) {
1267 if (IsArrow && !Base->getType()->isFunctionType())
1284 ExprResult &BaseExpr, bool &IsArrow,
1290 BaseExpr = S.PerformMemberExprBaseConversion(BaseExpr.get(), IsArrow);
1304 if (IsArrow) {
1320 << BaseType << int(IsArrow) << BaseExpr.get()->getSourceRange()
1323 IsArrow = false;
1337 OpLoc, IsArrow, SS, HasTemplateArgs, TE))
1371 return new (S.Context) ObjCIsaExpr(BaseExpr.get(), IsArrow, MemberLoc,
1374 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1390 Validator->IsObjCIvarLookup = IsArrow;
1407 if (IsArrow &&
1491 IsArrow);
1505 if (!IsArrow && (OPT = BaseType->getAs<ObjCObjectPointerType>())) {
1561 if (IsArrow && ShouldTryAgainWithRedefinitionType(S, BaseExpr))
1562 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1575 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1614 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1629 // FIXME: this expr should store IsArrow.
1632 if (IsArrow)
1651 IsArrow && BaseType->isSpecificBuiltinType(BuiltinType::ObjCSel) &&
1655 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1670 if (!IsArrow && Ptr->getPointeeType()->isRecordType() &&
1673 << BaseType << int(IsArrow) << BaseExpr.get()->getSourceRange()
1677 IsArrow = true;
1678 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1688 IsArrow ? &isPointerToRecordType : &isRecordType)) {
1692 return LookupMemberExpr(S, R, BaseExpr, IsArrow, OpLoc, SS,
1737 bool IsArrow = (OpKind == tok::arrow);
1749 return ActOnDependentMemberExpr(Base, Base->getType(), IsArrow, OpLoc, SS,
1755 return BuildMemberReferenceExpr(Base, Base->getType(), OpLoc, IsArrow, SS,
1761 BuildFieldReferenceExpr(Sema &S, Expr *BaseExpr, bool IsArrow,
1771 if (!IsArrow) {
1787 if (IsArrow) BaseType = BaseType->getAs<PointerType>()->getPointeeType();
1817 BuildMemberExpr(S, S.Context, Base.get(), IsArrow, OpLoc, SS,
1823 if (S.getLangOpts().OpenMP && IsArrow &&
1863 /*IsArrow*/ true,