Lines Matching defs:EvalInfo
436 struct EvalInfo { struct
437 ASTContext &Ctx;
440 Expr::EvalStatus &EvalStatus;
443 CallStackFrame *CurrentCall;
446 unsigned CallStackDepth;
449 unsigned NextCallIndex;
454 unsigned StepsLeft;
458 CallStackFrame BottomFrame;
462 llvm::SmallVector<Cleanup, 16> CleanupStack;
466 APValue::LValueBase EvaluatingDecl;
470 APValue *EvaluatingDeclValue;
474 bool HasActiveDiagnostic;
478 bool HasFoldFailureDiagnostic;
480 enum EvaluationMode {
523 } EvalMode;
527 bool checkingPotentialConstantExpression() const { in checkingPotentialConstantExpression()
535 bool checkingForOverflow() { return EvalMode == EM_EvaluateForOverflow; } in checkingForOverflow()
537 EvalInfo(const ASTContext &C, Expr::EvalStatus &S, EvaluationMode Mode) in EvalInfo() argument
546 void setEvaluatingDecl(APValue::LValueBase Base, APValue &Value) { in setEvaluatingDecl()
551 const LangOptions &getLangOpts() const { return Ctx.getLangOpts(); } in getLangOpts()
553 bool CheckCallLimit(SourceLocation Loc) { in CheckCallLimit()
570 CallStackFrame *getCallFrame(unsigned CallIndex) { in getCallFrame()
580 bool nextStep(const Stmt *S) { in nextStep()
591 PartialDiagnostic &addDiag(SourceLocation Loc, diag::kind DiagId) { in addDiag()
602 OptionalDiagnostic Diag(SourceLocation Loc, diag::kind DiagId in Diag()
650 OptionalDiagnostic Diag(const Expr *E, diag::kind DiagId in Diag()
665 OptionalDiagnostic CCEDiag(LocArg Loc, diag::kind DiagId in CCEDiag()
678 OptionalDiagnostic Note(SourceLocation Loc, diag::kind DiagId) { in Note()
685 void addNotes(ArrayRef<PartialDiagnosticAt> Diags) { in addNotes()
694 bool keepEvaluatingAfterSideEffect() { in keepEvaluatingAfterSideEffect()
713 bool noteSideEffect() { in noteSideEffect()
719 bool keepEvaluatingAfterUndefinedBehavior() { in keepEvaluatingAfterUndefinedBehavior()
739 bool noteUndefinedBehavior() { in noteUndefinedBehavior()
746 bool keepEvaluatingAfterFailure() { in keepEvaluatingAfterFailure()
766 bool allowInvalidBaseExpr() const { in allowInvalidBaseExpr()