reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Sema/SemaExpr.cpp
10691   if ((LHSType->isArithmeticType() || LHSType->isEnumeralType()) &&
10691   if ((LHSType->isArithmeticType() || LHSType->isEnumeralType()) &&
10750   if ((LHSType->isIntegerType() && !LHSIsNull) ||
10760         ((LHSType->isFunctionPointerType() && RHSType->isVoidPointerType()) ||
10761          (RHSType->isFunctionPointerType() && LHSType->isVoidPointerType()))) {
10771       RHS = ImpCastExprToType(RHS.get(), LHSType, CK_BitCast);
10784     if ((int)LHSType->isPointerType() + (int)RHSType->isPointerType() >=
10786         (!LangOpts.ObjCAutoRefCount || !(LHSType->isObjCObjectPointerType() ||
10792   } else if (LHSType->isPointerType() &&
10797       LHSType->castAs<PointerType>()->getPointeeType().getCanonicalType();
10807           << LHSType << RHSType << LHS.get()->getSourceRange()
10824         const PointerType *LHSPtr = LHSType->castAs<PointerType>();
10828               << LHSType << RHSType << 0 /* comparison */
10839         RHS = ImpCastExprToType(RHS.get(), LHSType, Kind);
10849       if (LHSType->isNullPtrType()) {
10850         RHS = ImpCastExprToType(RHS.get(), LHSType, CK_NullToPointer);
10862         (LHSType->isObjCObjectPointerType() || LHSType->isBlockPointerType())) {
10862         (LHSType->isObjCObjectPointerType() || LHSType->isBlockPointerType())) {
10863       RHS = ImpCastExprToType(RHS.get(), LHSType, CK_NullToPointer);
10866     if (!IsRelational && LHSType->isNullPtrType() &&
10873         ((LHSType->isNullPtrType() && RHSType->isPointerType()) ||
10874          (RHSType->isNullPtrType() && LHSType->isPointerType()))) {
10889             RHS = ImpCastExprToType(RHS.get(), LHSType, CK_NullToPointer);
10901         (LHSType->isMemberPointerType() || RHSType->isMemberPointerType())) {
10910   if (!IsRelational && LHSType->isBlockPointerType() &&
10912     QualType lpointee = LHSType->castAs<BlockPointerType>()->getPointeeType();
10918         << LHSType << RHSType << LHS.get()->getSourceRange()
10921     RHS = ImpCastExprToType(RHS.get(), LHSType, CK_BitCast);
10927       && ((LHSType->isBlockPointerType() && RHSType->isPointerType())
10928           || (LHSType->isPointerType() && RHSType->isBlockPointerType()))) {
10932             || (LHSType->isPointerType() && LHSType->castAs<PointerType>()
10932             || (LHSType->isPointerType() && LHSType->castAs<PointerType>()
10935           << LHSType << RHSType << LHS.get()->getSourceRange()
10943       RHS = ImpCastExprToType(RHS.get(), LHSType,
10944                               LHSType->isPointerType() ? CK_BitCast
10949   if (LHSType->isObjCObjectPointerType() ||
10951     const PointerType *LPT = LHSType->getAs<PointerType>();
10958           !Context.typesAreCompatible(LHSType, RHSType)) {
10973           CheckObjCConversion(SourceRange(), LHSType, E, CCK_ImplicitConversion,
10976         RHS = ImpCastExprToType(E, LHSType,
10981     if (LHSType->isObjCObjectPointerType() &&
10983       if (!Context.areComparableObjCPointerTypes(LHSType, RHSType))
10992         RHS = ImpCastExprToType(RHS.get(), LHSType, CK_BitCast);
10996     if (!IsRelational && LHSType->isBlockPointerType() &&
11002                LHSType->isBlockCompatibleObjCPointerType(Context) &&
11004       RHS = ImpCastExprToType(RHS.get(), LHSType,
11009   if ((LHSType->isAnyPointerType() && RHSType->isIntegerType()) ||
11010       (LHSType->isIntegerType() && RHSType->isAnyPointerType())) {
11016     } else if ((LHSIsNull && LHSType->isIntegerType()) ||
11034         << LHSType << RHSType << LHS.get()->getSourceRange()
11040     if (LHSType->isIntegerType())
11044       RHS = ImpCastExprToType(RHS.get(), LHSType,
11051       && LHSType->isBlockPointerType() && RHSType->isIntegerType()) {
11052     RHS = ImpCastExprToType(RHS.get(), LHSType, CK_NullToPointer);
11056       && LHSType->isIntegerType() && RHSType->isBlockPointerType()) {
11062     if (LHSType->isClkEventT() && RHSType->isClkEventT()) {
11066     if (LHSType->isQueueT() && RHSType->isQueueT()) {
11075     if (LHSType->isQueueT() && RHSIsNull) {
11076       RHS = ImpCastExprToType(RHS.get(), LHSType, CK_NullToPointer);