Skip to content

[flang][build] Fix build warning #90789

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 1, 2024
Merged

[flang][build] Fix build warning #90789

merged 1 commit into from
May 1, 2024

Conversation

klausler
Copy link
Contributor

@klausler klausler commented May 1, 2024

Fix a warning from some build compilers about an unused lambda capture. There are some if constexpr branches in the body of the code that do not use the capture.

Fix a warning from some build compilers about an unused lambda
capture.  There are some `if constexpr` branches in the body of
the code that do not use the capture.
@klausler klausler merged commit e98cb36 into llvm:main May 1, 2024
@llvmbot llvmbot added flang Flang issues not falling into any other category flang:semantics labels May 1, 2024
@klausler klausler deleted the fix branch May 1, 2024 22:15
@llvmbot
Copy link
Member

llvmbot commented May 1, 2024

@llvm/pr-subscribers-flang-semantics

Author: Peter Klausler (klausler)

Changes

Fix a warning from some build compilers about an unused lambda capture. There are some if constexpr branches in the body of the code that do not use the capture.


Full diff: https://github.com/llvm/llvm-project/pull/90789.diff

1 Files Affected:

  • (modified) flang/lib/Evaluate/fold-implementation.h (+3-3)
diff --git a/flang/lib/Evaluate/fold-implementation.h b/flang/lib/Evaluate/fold-implementation.h
index e3b49449b88866..d5c393140c5745 100644
--- a/flang/lib/Evaluate/fold-implementation.h
+++ b/flang/lib/Evaluate/fold-implementation.h
@@ -1686,7 +1686,7 @@ Expr<TO> FoldOperation(
     Convert<TO, FROMCAT> &convert;
   } msvcWorkaround{context, convert};
   return common::visit(
-      [&msvcWorkaround, &context](auto &kindExpr) -> Expr<TO> {
+      [&msvcWorkaround](auto &kindExpr) -> Expr<TO> {
         using Operand = ResultType<decltype(kindExpr)>;
         // This variable is a workaround for msvc which emits an error when
         // using the FROMCAT template parameter below.
@@ -1699,7 +1699,7 @@ Expr<TO> FoldOperation(
             if constexpr (FromCat == TypeCategory::Integer) {
               auto converted{Scalar<TO>::ConvertSigned(*value)};
               if (converted.overflow &&
-                  context.languageFeatures().ShouldWarn(
+                  msvcWorkaround.context.languageFeatures().ShouldWarn(
                       common::UsageWarning::FoldingException)) {
                 ctx.messages().Say(
                     "INTEGER(%d) to INTEGER(%d) conversion overflowed"_warn_en_US,
@@ -1708,7 +1708,7 @@ Expr<TO> FoldOperation(
               return ScalarConstantToExpr(std::move(converted.value));
             } else if constexpr (FromCat == TypeCategory::Real) {
               auto converted{value->template ToInteger<Scalar<TO>>()};
-              if (context.languageFeatures().ShouldWarn(
+              if (msvcWorkaround.context.languageFeatures().ShouldWarn(
                       common::UsageWarning::FoldingException)) {
                 if (converted.flags.test(RealFlag::InvalidArgument)) {
                   ctx.messages().Say(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
flang:semantics flang Flang issues not falling into any other category
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants