reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
12830 std::tie(LHS, RHS) = CorrectDelayedTyposInBinOp(*this, Opc, LHSExpr, RHSExpr); 12831 if (!LHS.isUsable() || !RHS.isUsable()) 12844 ResultTy = InvalidOperands(OpLoc, LHS, RHS); 12854 ResultTy = InvalidOperands(OpLoc, LHS, RHS); 12869 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, QualType()); 12876 DiagnoseSelfAssignment(*this, LHS.get(), RHS.get(), OpLoc, true); 12877 DiagnoseSelfMove(LHS.get(), RHS.get(), OpLoc); 12892 if (auto *BE = dyn_cast<BlockExpr>(RHS.get()->IgnoreParens())) 12906 ResultTy = CheckPointerToMemberOperands(LHS, RHS, VK, OpLoc, 12912 ResultTy = CheckMultiplyDivideOperands(LHS, RHS, OpLoc, false, 12916 ResultTy = CheckRemainderOperands(LHS, RHS, OpLoc); 12920 ResultTy = CheckAdditionOperands(LHS, RHS, OpLoc, Opc); 12924 ResultTy = CheckSubtractionOperands(LHS, RHS, OpLoc); 12928 ResultTy = CheckShiftOperands(LHS, RHS, OpLoc, Opc); 12935 ResultTy = CheckCompareOperands(LHS, RHS, OpLoc, Opc); 12940 ResultTy = CheckCompareOperands(LHS, RHS, OpLoc, Opc); 12944 ResultTy = CheckCompareOperands(LHS, RHS, OpLoc, Opc); 12948 checkObjCPointerIntrospection(*this, LHS, RHS, OpLoc); 12952 ResultTy = CheckBitwiseOperands(LHS, RHS, OpLoc, Opc); 12957 ResultTy = CheckLogicalOperands(LHS, RHS, OpLoc, Opc); 12962 CompResultTy = CheckMultiplyDivideOperands(LHS, RHS, OpLoc, true, 12965 if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid()) 12966 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy); 12969 CompResultTy = CheckRemainderOperands(LHS, RHS, OpLoc, true); 12971 if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid()) 12972 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy); 12976 CompResultTy = CheckAdditionOperands(LHS, RHS, OpLoc, Opc, &CompLHSTy); 12977 if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid()) 12978 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy); 12982 CompResultTy = CheckSubtractionOperands(LHS, RHS, OpLoc, &CompLHSTy); 12983 if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid()) 12984 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy); 12988 CompResultTy = CheckShiftOperands(LHS, RHS, OpLoc, Opc, true); 12990 if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid()) 12991 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy); 12995 DiagnoseSelfAssignment(*this, LHS.get(), RHS.get(), OpLoc, true); 12998 CompResultTy = CheckBitwiseOperands(LHS, RHS, OpLoc, Opc); 13000 if (!CompResultTy.isNull() && !LHS.isInvalid() && !RHS.isInvalid()) 13001 ResultTy = CheckAssignmentOperands(LHS.get(), RHS, OpLoc, CompResultTy); 13004 ResultTy = CheckCommaOperands(*this, LHS, RHS, OpLoc); 13005 if (getLangOpts().CPlusPlus && !RHS.isInvalid()) { 13006 VK = RHS.get()->getValueKind(); 13007 OK = RHS.get()->getObjectKind(); 13011 if (ResultTy.isNull() || LHS.isInvalid() || RHS.isInvalid()) 13018 assert(isVector(RHS.get()->getType(), Context.HalfTy) == 13026 CheckArrayAccess(RHS.get()); 13033 SourceLocation RHSLocEnd = getLocForEndOfToken(RHS.get()->getEndLoc()); 13046 DiagnoseDirectIsaAccess(*this, OIRE, OpLoc, RHS.get()); 13051 return convertHalfVecBinOp(*this, LHS, RHS, Opc, ResultTy, VK, OK, false, 13053 return new (Context) BinaryOperator(LHS.get(), RHS.get(), Opc, ResultTy, VK, 13065 return convertHalfVecBinOp(*this, LHS, RHS, Opc, ResultTy, VK, OK, true, 13069 LHS.get(), RHS.get(), Opc, ResultTy, VK, OK, CompLHSTy, CompResultTy,