diff options
Diffstat (limited to 'flang/lib/Evaluate/common.cpp')
| -rw-r--r-- | flang/lib/Evaluate/common.cpp | 18 | 
1 files changed, 11 insertions, 7 deletions
diff --git a/flang/lib/Evaluate/common.cpp b/flang/lib/Evaluate/common.cpp index 46c75a5..ed6a0ef 100644 --- a/flang/lib/Evaluate/common.cpp +++ b/flang/lib/Evaluate/common.cpp @@ -13,24 +13,28 @@ using namespace Fortran::parser::literals;  namespace Fortran::evaluate { -void RealFlagWarnings( -    FoldingContext &context, const RealFlags &flags, const char *operation) { +void FoldingContext::RealFlagWarnings( +    const RealFlags &flags, const char *operation) {    static constexpr auto warning{common::UsageWarning::FoldingException};    if (flags.test(RealFlag::Overflow)) { -    context.Warn(warning, "overflow on %s"_warn_en_US, operation); +    Warn(warning, "overflow on %s%s"_warn_en_US, operation, +        realFlagWarningContext_);    }    if (flags.test(RealFlag::DivideByZero)) {      if (std::strcmp(operation, "division") == 0) { -      context.Warn(warning, "division by zero"_warn_en_US); +      Warn(warning, "division by zero%s"_warn_en_US, realFlagWarningContext_);      } else { -      context.Warn(warning, "division by zero on %s"_warn_en_US, operation); +      Warn(warning, "division by zero on %s%s"_warn_en_US, operation, +          realFlagWarningContext_);      }    }    if (flags.test(RealFlag::InvalidArgument)) { -    context.Warn(warning, "invalid argument on %s"_warn_en_US, operation); +    Warn(warning, "invalid argument on %s%s"_warn_en_US, operation, +        realFlagWarningContext_);    }    if (flags.test(RealFlag::Underflow)) { -    context.Warn(warning, "underflow on %s"_warn_en_US, operation); +    Warn(warning, "underflow on %s%s"_warn_en_US, operation, +        realFlagWarningContext_);    }  }  | 
