Lines Matching refs:baseExpr
447 Sema::ActOnDependentMemberExpr(Expr *BaseExpr, QualType BaseType,
467 assert(BaseExpr && "cannot happen with implicit member accesses");
469 << BaseType << BaseExpr->getSourceRange() << NameInfo.getSourceRange();
478 // Get the type being accessed in BaseType. If this is an arrow, the BaseExpr
480 return Owned(CXXDependentScopeMemberExpr::Create(Context, BaseExpr, BaseType,
492 Expr *BaseExpr,
499 if (!BaseExpr)
518 bool Sema::CheckQualifiedMemberReference(Expr *BaseExpr,
534 if (!BaseExpr && !(*I)->isCXXInstanceMember())
551 DiagnoseQualifiedMemberReference(*this, BaseExpr, BaseType, SS,
716 BuildFieldReferenceExpr(Sema &S, Expr *BaseExpr, bool IsArrow,
837 BuildMSPropertyRefExpr(Sema &S, Expr *BaseExpr, bool IsArrow,
843 return new (S.Context) MSPropertyRefExpr(BaseExpr, PD, IsArrow,
870 Sema::BuildMemberReferenceExpr(Expr *BaseExpr, QualType BaseExprType,
901 if (!IsArrow && BaseExpr) {
905 RetryExpr = ActOnStartCXXMemberReference(getCurScope(), BaseExpr,
927 << (BaseExpr ? BaseExpr->getSourceRange() : SourceRange());
938 if ((SS.isSet() || !BaseExpr ||
939 (isa<CXXThisExpr>(BaseExpr) &&
940 cast<CXXThisExpr>(BaseExpr)->isImplicit())) &&
942 CheckQualifiedMemberReference(BaseExpr, BaseType, SS, R))
954 BaseExpr, BaseExprType,
976 if (!BaseExpr) {
985 BaseExpr = new (Context) CXXThisExpr(Loc, BaseExprType,/*isImplicit=*/true);
998 Owned(BaseExpr);
1003 return BuildFieldReferenceExpr(*this, BaseExpr, IsArrow,
1007 return BuildMSPropertyRefExpr(*this, BaseExpr, IsArrow, SS, PD,
1014 FoundDecl, BaseExpr,
1018 return Owned(BuildMemberExpr(*this, Context, BaseExpr, IsArrow, SS,
1035 return Owned(BuildMemberExpr(*this, Context, BaseExpr, IsArrow, SS,
1043 return Owned(BuildMemberExpr(*this, Context, BaseExpr, IsArrow, SS,
1048 Owned(BaseExpr);
1125 Sema::LookupMemberExpr(LookupResult &R, ExprResult &BaseExpr,
1129 assert(BaseExpr.get() && "no base expression");
1132 BaseExpr = PerformMemberExprBaseConversion(BaseExpr.take(), IsArrow);
1133 if (BaseExpr.isInvalid())
1136 QualType BaseType = BaseExpr.get()->getType();
1165 << BaseType << BaseExpr.get()->getSourceRange();
1172 if (LookupMemberExprInRecord(*this, R, BaseExpr.get()->getSourceRange(),
1205 return Owned(new (Context) ObjCIsaExpr(BaseExpr.take(), IsArrow, MemberLoc,
1208 if (ShouldTryAgainWithRedefinitionType(*this, BaseExpr))
1209 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1215 BaseExpr.get()))
1247 << Member << BaseExpr.get()->getType()
1254 << BaseExpr.get()->getSourceRange();
1303 Expr *BaseExp = BaseExpr.get()->IgnoreParenImpCasts();
1327 BaseExpr.take(),
1354 BaseExpr = DefaultLvalueConversion(BaseExpr.take());
1355 if (BaseExpr.isInvalid())
1358 assert(Context.hasSameUnqualifiedType(BaseType, BaseExpr.get()->getType()));
1379 BaseExpr.take()));
1398 MemberLoc, BaseExpr.take()));
1403 if (IsArrow && ShouldTryAgainWithRedefinitionType(*this, BaseExpr))
1404 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1416 if (ShouldTryAgainWithRedefinitionType(*this, BaseExpr))
1417 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1453 MemberLoc, BaseExpr.take()));
1456 if (ShouldTryAgainWithRedefinitionType(*this, BaseExpr))
1457 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1465 return HandleExprPropertyRefExpr(OPT, BaseExpr.get(), OpLoc,
1474 ExprValueKind VK = (IsArrow ? VK_LValue : BaseExpr.get()->getValueKind());
1480 return Owned(new (Context) ExtVectorElementExpr(ret, VK, BaseExpr.take(),
1489 BaseExpr = ImpCastExprToType(BaseExpr.take(),
1492 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1510 << BaseType << int(IsArrow) << BaseExpr.get()->getSourceRange()
1515 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1522 if (tryToRecoverWithCall(BaseExpr,
1526 if (BaseExpr.isInvalid())
1528 BaseExpr = DefaultFunctionArrayConversion(BaseExpr.take());
1529 return LookupMemberExpr(R, BaseExpr, IsArrow, OpLoc, SS,
1534 << BaseType << BaseExpr.get()->getSourceRange() << MemberLoc;
1632 BuildFieldReferenceExpr(Sema &S, Expr *BaseExpr, bool IsArrow,
1643 BaseExpr->getObjectKind() == OK_Ordinary)
1644 VK = BaseExpr->getValueKind();
1657 QualType BaseType = BaseExpr->getType();
1683 S.PerformObjectMemberConversion(BaseExpr, SS.getScopeRep(),
1720 Expr *baseExpr = 0; // null signifies implicit access
1726 baseExpr = new (Context) CXXThisExpr(loc, ThisTy, /*isImplicit=*/true);
1729 return BuildMemberReferenceExpr(baseExpr, ThisTy,