reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
7471 if (LHSTy->isObjCClassType() && 7473 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_CPointerToObjCPointerCast); 7474 return LHSTy; 7477 (Context.hasSameType(LHSTy, Context.getObjCClassRedefinitionType()))) { 7482 if (LHSTy->isObjCIdType() && 7484 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_CPointerToObjCPointerCast); 7485 return LHSTy; 7488 (Context.hasSameType(LHSTy, Context.getObjCIdRedefinitionType()))) { 7493 if (Context.isObjCSelType(LHSTy) && 7495 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_BitCast); 7496 return LHSTy; 7499 (Context.hasSameType(LHSTy, Context.getObjCSelRedefinitionType()))) { 7504 if (LHSTy->isObjCObjectPointerType() && RHSTy->isObjCObjectPointerType()) { 7506 if (Context.getCanonicalType(LHSTy) == Context.getCanonicalType(RHSTy)) { 7508 return LHSTy; 7510 const ObjCObjectPointerType *LHSOPT = LHSTy->castAs<ObjCObjectPointerType>(); 7512 QualType compositeType = LHSTy; 7531 compositeType = RHSOPT->isObjCBuiltinType() ? RHSTy : LHSTy; 7533 compositeType = LHSOPT->isObjCBuiltinType() ? LHSTy : RHSTy; 7543 } else if (LHSTy->isObjCIdType() || RHSTy->isObjCIdType()) { 7547 << LHSTy << RHSTy 7560 if (LHSTy->isVoidPointerType() && RHSTy->isObjCObjectPointerType()) { 7564 Diag(QuestionLoc, diag::err_cond_voidptr_arc) << LHSTy << RHSTy 7569 QualType lhptee = LHSTy->castAs<PointerType>()->getPointeeType(); 7580 if (LHSTy->isObjCObjectPointerType() && RHSTy->isVoidPointerType()) { 7584 Diag(QuestionLoc, diag::err_cond_voidptr_arc) << LHSTy << RHSTy 7589 QualType lhptee = LHSTy->castAs<ObjCObjectPointerType>()->getPointeeType();