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

References

tools/clang/lib/Sema/SemaCast.cpp
  138       Self.CheckCastAlign(SrcExpr.get(), DestType, OpRange);
  144       Expr *src = SrcExpr.get();
  148       SrcExpr = src;
  156       SrcExpr = Self.CheckPlaceholderExpr(SrcExpr.get());
  156       SrcExpr = Self.CheckPlaceholderExpr(SrcExpr.get());
  157       if (SrcExpr.isInvalid())
  278       if (Op.SrcExpr.isInvalid())
  283                                   Op.ValueKind, Op.SrcExpr.get(), DestTInfo,
  296       if (Op.SrcExpr.isInvalid())
  300                                     Op.ValueKind, Op.Kind, Op.SrcExpr.get(),
  308       if (Op.SrcExpr.isInvalid())
  313                                     Op.ValueKind, Op.Kind, Op.SrcExpr.get(),
  321       if (Op.SrcExpr.isInvalid())
  327                                    Op.ValueKind, Op.Kind, Op.SrcExpr.get(),
  357     if (Op.SrcExpr.isInvalid())
  363                                        Op.SrcExpr.get(), TSI, KWLoc, RParenLoc);
  712     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
  712     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
  714     SrcExpr = Self.CheckPlaceholderExpr(SrcExpr.get());
  714     SrcExpr = Self.CheckPlaceholderExpr(SrcExpr.get());
  715   if (SrcExpr.isInvalid()) // if conversion failed, don't report another error
  718   QualType OrigSrcType = SrcExpr.get()->getType();
  734     SrcExpr = ExprError();
  745       SrcExpr = ExprError();
  751     SrcExpr = ExprError();
  766         << OrigSrcType << SrcExpr.get()->getSourceRange();
  767       SrcExpr = ExprError();
  771     if (!SrcExpr.get()->isLValue()) {
  779     if (SrcExpr.get()->isRValue())
  780       SrcExpr = Self.CreateMaterializeTemporaryExpr(
  781           SrcType, SrcExpr.get(), /*IsLValueReference*/ false);
  789                                  SrcExpr.get())) {
  790       SrcExpr = ExprError();
  795       << SrcPointee.getUnqualifiedType() << SrcExpr.get()->getSourceRange();
  796     SrcExpr = ExprError();
  810     SrcExpr = ExprError();
  828       SrcExpr = ExprError();
  841       << SrcPointee.getUnqualifiedType() << SrcExpr.get()->getSourceRange();
  842     SrcExpr = ExprError();
  850     SrcExpr = ExprError();
  865     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
  865     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
  867     SrcExpr = Self.CheckPlaceholderExpr(SrcExpr.get());
  867     SrcExpr = Self.CheckPlaceholderExpr(SrcExpr.get());
  868   if (SrcExpr.isInvalid()) // if conversion failed, don't report another error
  872   auto TCR = TryConstCast(Self, SrcExpr, DestType, /*CStyle*/ false, msg);
  875       << SrcExpr.get()->getType() << DestType << OpRange;
  878     SrcExpr = ExprError();
  981     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
  981     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
  984   if (SrcExpr.isInvalid()) // if conversion failed, don't report another error
  989     TryReinterpretCast(Self, SrcExpr, DestType,
  992     if (SrcExpr.isInvalid()) // if conversion failed, don't report another error
  994     if (SrcExpr.get()->getType() == Self.Context.OverloadTy) {
  997         << OverloadExpr::find(SrcExpr.get()).Expression->getName()
  999       Self.NoteAllOverloadCandidates(SrcExpr.get());
 1002       diagnoseBadCast(Self, msg, CT_Reinterpret, OpRange, SrcExpr.get(),
 1010     DiagnoseReinterpretUpDownCast(Self, SrcExpr.get(), DestType, OpRange);
 1012     SrcExpr = ExprError();
 1023     if (SrcExpr.isInvalid())
 1034       Self.ResolveAndFixSingleFunctionTemplateSpecialization(SrcExpr,
 1038       if (SrcExpr.isInvalid())
 1042     SrcExpr = Self.IgnoredValueConversions(SrcExpr.get());
 1042     SrcExpr = Self.IgnoredValueConversions(SrcExpr.get());
 1048     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
 1048     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
 1049     if (SrcExpr.isInvalid()) // if conversion failed, don't report another error
 1055     = TryStaticCast(Self, SrcExpr, DestType, Sema::CCK_OtherCast, OpRange, msg,
 1058     if (SrcExpr.isInvalid())
 1060     if (SrcExpr.get()->getType() == Self.Context.OverloadTy) {
 1061       OverloadExpr* oe = OverloadExpr::find(SrcExpr.get()).Expression;
 1065       Self.NoteAllOverloadCandidates(SrcExpr.get());
 1067       diagnoseBadCast(Self, msg, CT_Static, OpRange, SrcExpr.get(), DestType,
 1078     SrcExpr = ExprError();
 2385             << SrcExpr.get()->getSourceRange();
 2387           SrcExpr = ExprError();
 2407       SrcExpr = Self.checkUnknownAnyCast(DestRange, DestType,
 2408                                          SrcExpr.get(), Kind,
 2414     if (SrcExpr.isInvalid())
 2426                   SrcExpr, /* Decay Function to ptr */ false,
 2429       if (SrcExpr.isInvalid())
 2433     SrcExpr = Self.IgnoredValueConversions(SrcExpr.get());
 2433     SrcExpr = Self.IgnoredValueConversions(SrcExpr.get());
 2438   if (DestType->isDependentType() || SrcExpr.get()->isTypeDependent() ||
 2439       SrcExpr.get()->isValueDependent()) {
 2446     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
 2446     SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
 2447     if (SrcExpr.isInvalid())
 2454         && (SrcExpr.get()->getType()->isIntegerType()
 2455             || SrcExpr.get()->getType()->isFloatingType())) {
 2457       SrcExpr = Self.prepareVectorSplat(DestType, SrcExpr.get());
 2457       SrcExpr = Self.prepareVectorSplat(DestType, SrcExpr.get());
 2474   TryCastResult tcr = TryConstCast(Self, SrcExpr, DestType,
 2476   if (SrcExpr.isInvalid())
 2484     tcr = TryAddressSpaceCast(Self, SrcExpr, DestType, /*CStyle*/ true, msg);
 2485     if (SrcExpr.isInvalid())
 2493       tcr = TryStaticCast(Self, SrcExpr, DestType, CCK, OpRange, msg, Kind,
 2495       if (SrcExpr.isInvalid())
 2500         tcr = TryReinterpretCast(Self, SrcExpr, DestType, /*CStyle*/ true,
 2502         if (SrcExpr.isInvalid())
 2513     if (SrcExpr.get()->getType() == Self.Context.OverloadTy) {
 2515       FunctionDecl *Fn = Self.ResolveAddressOfOverloadedFunction(SrcExpr.get(),
 2523         OverloadExpr *OE = OverloadExpr::find(SrcExpr.get()).Expression;
 2527         Self.NoteAllOverloadCandidates(SrcExpr.get());
 2531                       OpRange, SrcExpr.get(), DestType, ListInitialization);
 2539     SrcExpr = ExprError();
 2585     SrcExpr = Self.checkUnknownAnyCast(DestRange, DestType,
 2586                                        SrcExpr.get(), Kind,
 2595     SrcExpr = Self.IgnoredValueConversions(SrcExpr.get());
 2595     SrcExpr = Self.IgnoredValueConversions(SrcExpr.get());
 2596     if (SrcExpr.isInvalid())
 2605   if (SrcExpr.get()->getType() == Self.Context.OverloadTy) {
 2608             SrcExpr.get(), DestType, /*Complain=*/true, DAP))
 2609       SrcExpr = Self.FixOverloadedFunctionReference(SrcExpr.get(), DAP, FD);
 2609       SrcExpr = Self.FixOverloadedFunctionReference(SrcExpr.get(), DAP, FD);
 2612     assert(SrcExpr.isUsable());
 2614   SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
 2614   SrcExpr = Self.DefaultFunctionArrayLvalueConversion(SrcExpr.get());
 2615   if (SrcExpr.isInvalid())
 2617   QualType SrcType = SrcExpr.get()->getType();
 2622   if (SrcExpr.isInvalid())
 2627     SrcExpr = ExprError();
 2637         << DestType << SrcExpr.get()->getSourceRange();
 2647           << SrcExpr.get()->getSourceRange();
 2652           << SrcType << SrcExpr.get()->getSourceRange();
 2653         SrcExpr = ExprError();
 2661       if (SrcExpr.get()->EvaluateAsInt(Result, Self.Context)) {
 2669                   << CastInt.toString(10) << SrcExpr.get()->getSourceRange();
 2670         SrcExpr = ExprError();
 2677       << DestType << SrcExpr.get()->getSourceRange();
 2678     SrcExpr = ExprError();
 2686     Self.Diag(SrcExpr.get()->getExprLoc(),
 2688       << SrcType << SrcExpr.get()->getSourceRange();
 2689     SrcExpr = ExprError();
 2694     SrcExpr = Self.CheckExtVectorCast(OpRange, DestType, SrcExpr.get(), Kind);
 2694     SrcExpr = Self.CheckExtVectorCast(OpRange, DestType, SrcExpr.get(), Kind);
 2702       SrcExpr = Self.prepareVectorSplat(DestType, SrcExpr.get());
 2702       SrcExpr = Self.prepareVectorSplat(DestType, SrcExpr.get());
 2704       SrcExpr = ExprError();
 2711       SrcExpr = ExprError();
 2720   if (isa<ObjCSelectorExpr>(SrcExpr.get())) {
 2721     Self.Diag(SrcExpr.get()->getExprLoc(), diag::err_cast_selector_expr);
 2722     SrcExpr = ExprError();
 2730       Self.Diag(SrcExpr.get()->getExprLoc(),
 2732         << SrcType << SrcExpr.get()->getSourceRange();
 2733       SrcExpr = ExprError();
 2736     checkIntToPointerCast(/* CStyle */ true, OpRange.getBegin(), SrcExpr.get(),
 2741       Self.Diag(SrcExpr.get()->getBeginLoc(),
 2743           << DestType << SrcExpr.get()->getSourceRange();
 2744       SrcExpr = ExprError();
 2752       Self.Diag(SrcExpr.get()->getBeginLoc(), diag::err_opencl_cast_to_half)
 2753           << DestType << SrcExpr.get()->getSourceRange();
 2754       SrcExpr = ExprError();
 2762     if (SrcExpr.isInvalid())
 2773           Self.Diag(SrcExpr.get()->getBeginLoc(),
 2776               << SrcExpr.get()->getSourceRange();
 2782       Self.Diag(SrcExpr.get()->getBeginLoc(),
 2784           << 1 << SrcType << DestType << SrcExpr.get()->getSourceRange();
 2785       SrcExpr = ExprError();
 2790   DiagnoseCastOfObjCSEL(Self, SrcExpr, DestType);
 2791   DiagnoseCallingConvCast(Self, SrcExpr, DestType, OpRange);
 2792   DiagnoseBadFunctionCast(Self, SrcExpr, DestType);
 2793   Kind = Self.PrepareScalarCast(SrcExpr, DestType);
 2794   if (SrcExpr.isInvalid())
 2802   QualType SrcType = SrcExpr.get()->getType();
 2808     SrcExpr = ExprError();
 2812   if (SrcExpr.get()->isRValue())
 2813     SrcExpr = Self.CreateMaterializeTemporaryExpr(SrcType, SrcExpr.get(),
 2813     SrcExpr = Self.CreateMaterializeTemporaryExpr(SrcType, SrcExpr.get(),
 2821     SrcExpr = ExprError();
 2828     SrcExpr = ExprError();
 2835     SrcExpr = ExprError();
 2895   if (Op.SrcExpr.isInvalid())
 2899   DiagnoseCastQual(Op.Self, Op.SrcExpr, Op.DestType);
 2902                               Op.ValueKind, Op.Kind, Op.SrcExpr.get(),
 2917   if (Op.SrcExpr.isInvalid())
 2920   auto *SubExpr = Op.SrcExpr.get();
 2928                          Op.SrcExpr.get(), &Op.BasePath, LPLoc, RPLoc));