Home | History | Annotate | Download | only in Sema

Lines Matching defs:LHSTy

4139   QualType LHSTy = LHSExp->getType(), RHSTy = RHSExp->getType();
4149 if (LHSTy->isDependentType() || RHSTy->isDependentType()) {
4153 } else if (const PointerType *PTy = LHSTy->getAs<PointerType>()) {
4158 LHSTy->getAs<ObjCObjectPointerType>()) {
4185 } else if (const VectorType *VTy = LHSTy->getAs<VectorType>()) {
4194 } else if (LHSTy->isArrayType()) {
4202 LHSExp = ImpCastExprToType(LHSExp, Context.getArrayDecayedType(LHSTy),
4204 LHSTy = LHSExp->getType();
4208 ResultType = LHSTy->getAs<PointerType>()->getPointeeType();
5906 QualType LHSTy = LHS.get()->getType();
5909 if (S.Context.hasSameType(LHSTy, RHSTy)) {
5911 return LHSTy;
5918 if (const BlockPointerType *LHSBTy = LHSTy->getAs<BlockPointerType>()) {
5923 lhptee = LHSTy->castAs<PointerType>()->getPointeeType();
5950 << LHSTy << RHSTy << LHS.get()->getSourceRange()
5978 QualType LHSTy = LHS.get()->getType();
5981 if (!LHSTy->isBlockPointerType() || !RHSTy->isBlockPointerType()) {
5982 if (LHSTy->isVoidPointerType() || RHSTy->isVoidPointerType()) {
5989 << LHSTy << RHSTy << LHS.get()->getSourceRange()
6004 QualType LHSTy = LHS.get()->getType();
6008 QualType lhptee = LHSTy->getAs<PointerType>()->getPointeeType();
6283 QualType LHSTy = LHS.get()->getType();
6288 if (LHSTy->isArithmeticType() && RHSTy->isArithmeticType()) {
6297 if (const RecordType *LHSRT = LHSTy->getAs<RecordType>()) { // C99 6.5.15p3
6302 return LHSTy.getUnqualifiedType();
6308 if (LHSTy->isVoidType() || RHSTy->isVoidType()) {
6314 if (!checkConditionalNullPointer(*this, RHS, LHSTy)) return LHSTy;
6327 if (LHSTy->isBlockPointerType() || RHSTy->isBlockPointerType())
6332 if (LHSTy->isPointerType() && RHSTy->isPointerType())
6343 return LHSTy;
6353 << LHSTy << RHSTy << LHS.get()->getSourceRange()
6362 QualType LHSTy = LHS.get()->getType();
6368 if (LHSTy->isObjCClassType() &&
6370 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_CPointerToObjCPointerCast);
6371 return LHSTy;
6374 (Context.hasSameType(LHSTy, Context.getObjCClassRedefinitionType()))) {
6379 if (LHSTy->isObjCIdType() &&
6381 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_CPointerToObjCPointerCast);
6382 return LHSTy;
6385 (Context.hasSameType(LHSTy, Context.getObjCIdRedefinitionType()))) {
6390 if (Context.isObjCSelType(LHSTy) &&
6392 RHS = ImpCastExprToType(RHS.get(), LHSTy, CK_BitCast);
6393 return LHSTy;
6396 (Context.hasSameType(LHSTy, Context.getObjCSelRedefinitionType()))) {
6401 if (LHSTy->isObjCObjectPointerType() && RHSTy->isObjCObjectPointerType()) {
6403 if (Context.getCanonicalType(LHSTy) == Context.getCanonicalType(RHSTy)) {
6405 return LHSTy;
6407 const ObjCObjectPointerType *LHSOPT = LHSTy->castAs<ObjCObjectPointerType>();
6409 QualType compositeType = LHSTy;
6428 compositeType = RHSOPT->isObjCBuiltinType() ? RHSTy : LHSTy;
6430 compositeType = LHSOPT->isObjCBuiltinType() ? LHSTy : RHSTy;
6431 } else if ((LHSTy->isObjCQualifiedIdType() ||
6433 Context.ObjCQualifiedIdTypesAreCompatible(LHSTy, RHSTy, true)) {
6439 } else if (LHSTy->isObjCIdType() || RHSTy->isObjCIdType()) {
6443 << LHSTy << RHSTy
6456 if (LHSTy->isVoidPointerType() && RHSTy->isObjCObjectPointerType()) {
6460 Diag(QuestionLoc, diag::err_cond_voidptr_arc) << LHSTy << RHSTy
6465 QualType lhptee = LHSTy->getAs<PointerType>()->getPointeeType();
6476 if (LHSTy->isObjCObjectPointerType() && RHSTy->isVoidPointerType()) {
6480 Diag(QuestionLoc, diag::err_cond_voidptr_arc) << LHSTy << RHSTy
6485 QualType lhptee = LHSTy->getAs<ObjCObjectPointerType>()->getPointeeType();
7979 QualType LHSTy = Context.isPromotableBitField(LHS.get());
7980 if (LHSTy.isNull()) {
7981 LHSTy = LHS.get()->getType();
7982 if (LHSTy->isPromotableIntegerType())
7983 LHSTy = Context.getPromotedIntegerType(LHSTy);
7985 *CompLHSTy = LHSTy;
9537 QualType LHSTy(LHSType);
9538 ConvTy = CheckSingleAssignmentConstraints(LHSTy, RHS);