<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/124191>124191</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Flang] Incorrect diagnostic on array constructor using intrinsic functions.
</td>
</tr>
<tr>
<th>Labels</th>
<td>
flang:frontend
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
DanielCChen
</td>
</tr>
</table>
<pre>
Consider the following code
```
character(3) :: arr(5)
arr = [character(3):: 'aa.', 'bb.', 'cc.', 'dd.', 'ee.']
print*, [integer:: (mod(iachar(arr(i:i-1:-1)(1:1)),5)+1, i=2,5,3)]
print*, [character(3):: arr(5:2:-1)]
! arr([4,3,2,1]) = & !! Same vector script as the line below.
arr([integer:: (mod(iachar(arr(i:i-1:-1)(1:1)),5)+1, i=2,5,3)]) = & !! Unexpected rror
[character(3):: arr(5:2:-1)]
print *, '10:', arr
end
```
Flang currently issues a compile time error as
```
./t.f:6:3: error: Dimension 1 of left-hand side has extent 2, but right-hand side has extent 4
arr([integer:: (mod(iachar(arr(i:i-1:-1)(1:1)),5)+1, i=2,5,3)]) = &
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
```
The vector subscript is [4,3,2,1] as indicated in the print statement. The error is in incorrect.
All ifort, gfortran and XLF compile and run the code successfully.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzUVU2P4zYM_TXMhRjDpmwnOfjgSRqgQG9tgV5lmY5VKFIgybM7_76gnZkdTHcvPbRoYCCixY-nRz5Lp2SvnrmD5hma804veQ6xO2tv2Z1OM_vdEMbX7hR8siNHzDPjFJwLX6y_ogkjQ9lDWz6esjezjtpkjkAHBXREUD2oHnWUNw3QEcoexURQZ4Tm-XPEIwBor3UBtAc6iTEMHwxjPhjj-MFgXo3mvJa5R-szUL9uNs_WZ75yfK9wuIUR6GC1YAA6bCAtqN4-VaD6p0rw0EHW2_IIdFoPQc-VJLWgzrS9O63gv1_4B2d8I0X19F5tTQBU4WMXmud6S36SQpU4rLSeEahFoEqcf9U3xhc2OURMJtp7Rp3WbjnrGQd24UvxxvyW9d8h4wPUD78H6t89f72zyTxijCGu-P4JXQ--8Y1w2lelxGxTIWFlz378NKpQ9henZYyXGNln94o2pYUTajThdreOMdsbIws41OlTfAF0ycUEqm9B9UoQrp6yONsb-2SDxwrDhI6n_DRrP6LICGedkL9m9hmFLxyWjNFe5x_41Bsx_13rpD40P_2Pn791_rf5m16W4SEZm_A7chMlWT9ao2VQrV9ltQ1cyjrzjX0uUBJug2LFHa03IUY2WWTXO4d2CjEL11dZRO1Rev3HL5f3YRM7Llt--bRiWozhlKbFuddiN3ZqPKqj3nFX7dW-bVt1qHdz13LdHuvDsTmqdhz3bEqt1aElYq1VPVQ721FJTVmRoqpsqS4GPSnShz21XOmRKqhLvmnrCudebkWI190qhK6iujpWO6cHdmm9I4gmkQyoforBZxEVkdwcsZPYp2G5JqhLZ1NO37Jlm916x6x6E0p_fmMHR6uvPqRsDQYvI65f0QSfclzW7ixJbhrrc7Q-WYPT4k22wadit0TXzTnf06r1C9DlavO8DIUJN6CLlH_8Pd1j-JNNBrpsEge6PA730tFfAQAA__-uoPDX">