File tree Expand file tree Collapse file tree 1 file changed +5
-3
lines changed
flang/include/flang/Lower/Support Expand file tree Collapse file tree 1 file changed +5
-3
lines changed Original file line number Diff line number Diff line change @@ -551,8 +551,8 @@ class IsEqualEvaluateExpr {
551
551
isEqual (x.upper (), y.upper ()) && isEqual (x.stride (), y.stride ());
552
552
}
553
553
template <typename A>
554
- static bool isEqual (const Fortran::evaluate::ArrayConstructorValue <A> &x,
555
- const Fortran::evaluate::ArrayConstructorValue <A> &y) {
554
+ static bool isEqual (const Fortran::evaluate::ArrayConstructorValues <A> &x,
555
+ const Fortran::evaluate::ArrayConstructorValues <A> &y) {
556
556
using Expr = Fortran::evaluate::Expr<A>;
557
557
using ImpliedDo = Fortran::evaluate::ImpliedDo<A>;
558
558
for (const auto &[xValue, yValue] : llvm::zip (x, y)) {
@@ -579,7 +579,9 @@ class IsEqualEvaluateExpr {
579
579
if constexpr (A::category == Fortran::common::TypeCategory::Character) {
580
580
checkCharacterType = x.LEN () == y.LEN ();
581
581
}
582
- return isEqual (x, y) && x.GetType () == y.GetType () && checkCharacterType;
582
+ using Base = Fortran::evaluate::ArrayConstructorValues<A>;
583
+ return isEqual ((Base) x, (Base) y) &&
584
+ (x.GetType () == y.GetType () && checkCharacterType);
583
585
}
584
586
static bool isEqual (const Fortran::evaluate::ImpliedDoIndex &x,
585
587
const Fortran::evaluate::ImpliedDoIndex &y) {
You can’t perform that action at this time.
0 commit comments