Home | History | Annotate | Download | only in Sema

Lines Matching defs:LHSTy

3827   QualType LHSTy = LHSExp->getType(), RHSTy = RHSExp->getType();
3837 if (LHSTy->isDependentType() || RHSTy->isDependentType()) {
3841 } else if (const PointerType *PTy = LHSTy->getAs<PointerType>()) {
3846 LHSTy->getAs<ObjCObjectPointerType>()) {
3873 } else if (const VectorType *VTy = LHSTy->getAs<VectorType>()) {
3882 } else if (LHSTy->isArrayType()) {
3890 LHSExp = ImpCastExprToType(LHSExp, Context.getArrayDecayedType(LHSTy),
3892 LHSTy = LHSExp->getType();
3896 ResultType = LHSTy->getAs<PointerType>()->getPointeeType();
5507 QualType LHSTy = LHS.get()->getType();
5510 if (S.Context.hasSameType(LHSTy, RHSTy)) {
5512 return LHSTy;
5519 if (const BlockPointerType *LHSBTy = LHSTy->getAs<BlockPointerType>()) {
5524 lhptee = LHSTy->castAs<PointerType>()->getPointeeType();
5551 << LHSTy << RHSTy << LHS.get()->getSourceRange()
5609 QualType LHSTy = LHS.get()->getType();
5612 if (!LHSTy->isBlockPointerType() || !RHSTy->isBlockPointerType()) {
5613 if (LHSTy->isVoidPointerType() || RHSTy->isVoidPointerType()) {
5620 << LHSTy << RHSTy << LHS.get()->getSourceRange()
5635 QualType LHSTy = LHS.get()->getType();
5639 QualType lhptee = LHSTy->getAs<PointerType>()->getPointeeType();
5728 QualType LHSTy = LHS.get()->getType();
5740 if (LHSTy->isArithmeticType() && RHSTy->isArithmeticType())
5745 if (const RecordType *LHSRT = LHSTy->getAs<RecordType>()) { // C99 6.5.15p3
5750 return LHSTy.getUnqualifiedType();
5756 if (LHSTy->isVoidType() || RHSTy->isVoidType()) {
5762 if (!checkConditionalNullPointer(*this, RHS, LHSTy)) return LHSTy;
5775 if (LHSTy->isBlockPointerType() || RHSTy->isBlockPointerType())
5780 if (LHSTy->isPointerType() && RHSTy->isPointerType())
5791 return LHSTy;
5801 << LHSTy << RHSTy << LHS.get()->getSourceRange()
5810 QualType LHSTy = LHS.get()->getType();
5816 if (LHSTy->isObjCClassType() &&
5818 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_CPointerToObjCPointerCast);
5819 return LHSTy;
5822 (Context.hasSameType(LHSTy, Context.getObjCClassRedefinitionType()))) {
5827 if (LHSTy->isObjCIdType() &&
5829 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_CPointerToObjCPointerCast);
5830 return LHSTy;
5833 (Context.hasSameType(LHSTy, Context.getObjCIdRedefinitionType()))) {
5838 if (Context.isObjCSelType(LHSTy) &&
5840 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_BitCast);
5841 return LHSTy;
5844 (Context.hasSameType(LHSTy, Context.getObjCSelRedefinitionType()))) {
5849 if (LHSTy->isObjCObjectPointerType() && RHSTy->isObjCObjectPointerType()) {
5851 if (Context.getCanonicalType(LHSTy) == Context.getCanonicalType(RHSTy)) {
5853 return LHSTy;
5855 const ObjCObjectPointerType *LHSOPT = LHSTy->castAs<ObjCObjectPointerType>();
5857 QualType compositeType = LHSTy;
5873 compositeType = RHSOPT->isObjCBuiltinType() ? RHSTy : LHSTy;
5875 compositeType = LHSOPT->isObjCBuiltinType() ? LHSTy : RHSTy;
5876 } else if ((LHSTy->isObjCQualifiedIdType() ||
5878 Context.ObjCQualifiedIdTypesAreCompatible(LHSTy, RHSTy, true)) {
5884 } else if (LHSTy->isObjCIdType() || RHSTy->isObjCIdType()) {
5891 << LHSTy << RHSTy
5904 if (LHSTy->isVoidPointerType() && RHSTy->isObjCObjectPointerType()) {
5908 Diag(QuestionLoc, diag::err_cond_voidptr_arc) << LHSTy << RHSTy
5913 QualType lhptee = LHSTy->getAs<PointerType>()->getPointeeType();
5924 if (LHSTy->isObjCObjectPointerType() && RHSTy->isVoidPointerType()) {
5928 Diag(QuestionLoc, diag::err_cond_voidptr_arc) << LHSTy << RHSTy
5933 QualType lhptee = LHSTy->getAs<ObjCObjectPointerType>()->getPointeeType();
7316 QualType LHSTy = Context.isPromotableBitField(LHS.get());
7317 if (LHSTy.isNull()) {
7318 LHSTy = LHS.get()->getType();
7319 if (LHSTy->isPromotableIntegerType())
7320 LHSTy = Context.getPromotedIntegerType(LHSTy);
7322 *CompLHSTy = LHSTy;
8636 QualType LHSTy(LHSType);
8637 ConvTy = CheckSingleAssignmentConstraints(LHSTy, RHS);