aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'flang/lib/Evaluate/fold-logical.cpp')
-rw-r--r--flang/lib/Evaluate/fold-logical.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/flang/lib/Evaluate/fold-logical.cpp b/flang/lib/Evaluate/fold-logical.cpp
index 64e4bd8c8bd9..455b3c2605c3 100644
--- a/flang/lib/Evaluate/fold-logical.cpp
+++ b/flang/lib/Evaluate/fold-logical.cpp
@@ -106,6 +106,10 @@ Expr<Type<TypeCategory::Logical, KIND>> FoldIntrinsicFunction(
}
}
}
+ } else if (name == "logical") {
+ if (auto *expr{UnwrapExpr<Expr<SomeLogical>>(args[0])}) {
+ return Fold(context, ConvertToType<T>(std::move(*expr)));
+ }
} else if (name == "merge") {
return FoldMerge<T>(context, std::move(funcRef));
} else if (name == "__builtin_ieee_support_datatype" ||