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

References

tools/clang/lib/AST/ExprConstant.cpp
12683   switch (E->getCastKind()) {
12739     return ExprEvaluatorBaseTy::VisitCastExpr(E);
12744     return Error(E);
12748     if (!EvaluateFloat(E->getSubExpr(), Real, Info))
12757     if (!Visit(E->getSubExpr()))
12760     QualType To = E->getType()->castAs<ComplexType>()->getElementType();
12762       = E->getSubExpr()->getType()->castAs<ComplexType>()->getElementType();
12764     return HandleFloatToFloatCast(Info, E, From, To, Result.FloatReal) &&
12765            HandleFloatToFloatCast(Info, E, From, To, Result.FloatImag);
12769     if (!Visit(E->getSubExpr()))
12772     QualType To = E->getType()->castAs<ComplexType>()->getElementType();
12774       = E->getSubExpr()->getType()->castAs<ComplexType>()->getElementType();
12776     return HandleFloatToIntCast(Info, E, From, Result.FloatReal,
12778            HandleFloatToIntCast(Info, E, From, Result.FloatImag,
12784     if (!EvaluateInteger(E->getSubExpr(), Real, Info))
12793     if (!Visit(E->getSubExpr()))
12796     QualType To = E->getType()->castAs<ComplexType>()->getElementType();
12798       = E->getSubExpr()->getType()->castAs<ComplexType>()->getElementType();
12800     Result.IntReal = HandleIntToIntCast(Info, E, To, From, Result.IntReal);
12801     Result.IntImag = HandleIntToIntCast(Info, E, To, From, Result.IntImag);
12806     if (!Visit(E->getSubExpr()))
12809     QualType To = E->getType()->castAs<ComplexType>()->getElementType();
12811       = E->getSubExpr()->getType()->castAs<ComplexType>()->getElementType();
12813     return HandleIntToFloatCast(Info, E, From, Result.IntReal,
12815            HandleIntToFloatCast(Info, E, From, Result.IntImag,