From 78649a8499a0177cced99dcd61afcb48809e9109 Mon Sep 17 00:00:00 2001 From: Peter Klausler Date: Tue, 11 Jan 2022 11:24:55 -0800 Subject: [PATCH] [flang] Accept INDEX(..., BACK=array) The intrinsic table entry for INDEX mistakenly required the optional BACK= argument to be scalar, but it's an elemental intrinsic that can accept a conforming array. Differential Revision: https://reviews.llvm.org/D117700 --- flang/lib/Evaluate/intrinsics.cpp | 2 +- flang/test/Evaluate/folding05.f90 | Bin 10119 -> 10212 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/flang/lib/Evaluate/intrinsics.cpp b/flang/lib/Evaluate/intrinsics.cpp index 851871a8ef1e..ae7e5e9bf788 100644 --- a/flang/lib/Evaluate/intrinsics.cpp +++ b/flang/lib/Evaluate/intrinsics.cpp @@ -486,7 +486,7 @@ static const IntrinsicInterface genericIntrinsicFunction[]{ {"image_status", {{"image", SameInt}, OptionalTEAM}, DefaultInt}, {"index", {{"string", SameChar}, {"substring", SameChar}, - {"back", AnyLogical, Rank::scalar, Optionality::optional}, + {"back", AnyLogical, Rank::elemental, Optionality::optional}, DefaultingKIND}, KINDInt}, {"int", {{"a", AnyNumeric, Rank::elementalOrBOZ}, DefaultingKIND}, KINDInt}, diff --git a/flang/test/Evaluate/folding05.f90 b/flang/test/Evaluate/folding05.f90 index 4ace088ec551d7d5c065512c0086483e57426498..3be3904ccab5159aa04ab45f136913df95192186 100644 GIT binary patch delta 75 zcmZqof8xL4y5!^yqO4{X3bqP~IXN1cc`2zC8cK$MtCE{|0jc#DO8@`> delta 12 TcmaFj-|oNRy5wdPsSUgUC@%$Q