Lines Matching defs:RefExpr

259     ObjCPropertyRefExpr *RefExpr;
270 PseudoOpBuilder(S, refExpr->getLocation()), RefExpr(refExpr),
299 ObjCSubscriptRefExpr *RefExpr;
311 RefExpr(refExpr),
330 MSPropertyRefExpr *RefExpr;
335 RefExpr(refExpr) {}
542 if (RefExpr->isExplicitProperty()) {
543 const ObjCPropertyDecl *Prop = RefExpr->getExplicitProperty();
561 if (RefExpr->isImplicitProperty()) {
562 if ((Getter = RefExpr->getImplicitPropertyGetter())) {
568 ObjCMethodDecl *setter = RefExpr->getImplicitPropertySetter();
580 ObjCPropertyDecl *prop = RefExpr->getExplicitProperty();
581 Getter = LookupMethodInReceiverType(S, prop->getGetterName(), RefExpr);
591 if (RefExpr->isImplicitProperty()) {
592 if (ObjCMethodDecl *setter = RefExpr->getImplicitPropertySetter()) {
598 RefExpr->getImplicitPropertyGetter()->getSelector()
609 ObjCPropertyDecl *prop = RefExpr->getExplicitProperty();
614 LookupMethodInReceiverType(S, SetterSelector, RefExpr)) {
627 S.Diag(RefExpr->getExprLoc(), diag::error_property_setter_ambiguous_use)
649 if (ObjCPropertyDecl *prop = RefExpr->getExplicitProperty()) {
650 S.Diag(RefExpr->getLocation(),
665 if (RefExpr->isObjectReceiver()) {
666 InstanceReceiver = capture(RefExpr->getBase());
691 if (RefExpr->isClassReceiver()) {
692 receiverType = S.Context.getObjCInterfaceType(RefExpr->getClassReceiver());
693 } else if (RefExpr->isSuperReceiver()) {
694 receiverType = RefExpr->getSuperReceiverType();
703 if ((Getter->isInstanceMethod() && !RefExpr->isClassReceiver()) ||
704 RefExpr->isObjectReceiver()) {
705 assert(InstanceReceiver || RefExpr->isSuperReceiver());
710 msg = S.BuildClassMessageImplicit(receiverType, RefExpr->isSuperReceiver(),
732 if (RefExpr->isClassReceiver()) {
733 receiverType = S.Context.getObjCInterfaceType(RefExpr->getClassReceiver());
734 } else if (RefExpr->isSuperReceiver()) {
735 receiverType = RefExpr->getSuperReceiverType();
777 if ((Setter->isInstanceMethod() && !RefExpr->isClassReceiver()) ||
778 RefExpr->isObjectReceiver()) {
783 msg = S.BuildClassMessageImplicit(receiverType, RefExpr->isSuperReceiver(),
804 if (RefExpr->isImplicitProperty() && !RefExpr->getImplicitPropertyGetter()) {
805 S.Diag(RefExpr->getLocation(), diag::err_getter_not_found)
806 << RefExpr->getSourceRange();
813 if (RefExpr->isExplicitProperty() && !Getter->hasRelatedResultType())
814 S.DiagnosePropertyAccessorMismatch(RefExpr->getExplicitProperty(),
815 Getter, RefExpr->getLocation());
819 if (RefExpr->isExplicitProperty() && result.get()->isRValue()) {
820 QualType propType = RefExpr->getExplicitProperty()->getType();
831 if (!S.Diags.isIgnored(diag::warn_arc_repeated_use_of_weak, RefExpr->getLocation()))
832 S.getCurFunction()->markSafeWeakUse(RefExpr);
877 << unsigned(RefExpr->isImplicitProperty())
921 << unsigned(RefExpr->isImplicitProperty())
932 assert(RefExpr->isImplicitProperty());
1000 InstanceBase = capture(RefExpr->getBaseExpr());
1001 InstanceKey = capture(RefExpr->getKeyExpr());
1111 Expr *BaseExpr = RefExpr->getBaseExpr();
1123 S.CheckSubscriptingKind(RefExpr->getKeyExpr());
1127 RefExpr->getKeyExpr());
1190 RefExpr->getSourceRange(),
1198 S.Diag(RefExpr->getKeyExpr()->getExprLoc(),
1207 S.Diag(RefExpr->getKeyExpr()->getExprLoc(),
1220 Expr *BaseExpr = RefExpr->getBaseExpr();
1233 S.CheckSubscriptingKind(RefExpr->getKeyExpr());
1237 RefExpr->getKeyExpr());
1312 RefExpr->getSourceRange(),
1320 S.Diag(RefExpr->getKeyExpr()->getExprLoc(),
1328 S.Diag(RefExpr->getBaseExpr()->getExprLoc(),
1340 S.Diag(RefExpr->getKeyExpr()->getExprLoc(),
1343 S.Diag(RefExpr->getBaseExpr()->getExprLoc(),
1418 Expr *NewBase = capture(RefExpr->getBaseExpr());
1427 if (!RefExpr->getPropertyDecl()->hasGetter()) {
1428 S.Diag(RefExpr->getMemberLoc(), diag::err_no_accessor_for_property)
1429 << 0 /* getter */ << RefExpr->getPropertyDecl();
1434 IdentifierInfo *II = RefExpr->getPropertyDecl()->getGetterId();
1435 GetterName.setIdentifier(II, RefExpr->getMemberLoc());
1437 SS.Adopt(RefExpr->getQualifierLoc());
1439 S.getCurScope(), RefExpr->getBaseExpr(), SourceLocation(),
1440 RefExpr->isArrow() ? tok::arrow : tok::period, SS, SourceLocation(),
1443 S.Diag(RefExpr->getMemberLoc(),
1445 << RefExpr->getPropertyDecl();
1451 RefExpr->getSourceRange().getBegin(), ArgExprs,
1452 RefExpr->getSourceRange().getEnd());
1457 if (!RefExpr->getPropertyDecl()->hasSetter()) {
1458 S.Diag(RefExpr->getMemberLoc(), diag::err_no_accessor_for_property)
1459 << 1 /* setter */ << RefExpr->getPropertyDecl();
1464 IdentifierInfo *II = RefExpr->getPropertyDecl()->getSetterId();
1465 SetterName.setIdentifier(II, RefExpr->getMemberLoc());
1467 SS.Adopt(RefExpr->getQualifierLoc());
1469 S.getCurScope(), RefExpr->getBaseExpr(), SourceLocation(),
1470 RefExpr->isArrow() ? tok::arrow : tok::period, SS, SourceLocation(),
1473 S.Diag(RefExpr->getMemberLoc(),
1475 << RefExpr->getPropertyDecl();
1482 RefExpr->getSourceRange().getBegin(), ArgExprs,