<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/93600>93600</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Flang] Asynchronous: missing diagnose of undefinable array section actual corresponding to asynchronous dummy
</td>
</tr>
<tr>
<th>Labels</th>
<td>
bug,
flang:frontend
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
DanielCChen
</td>
</tr>
</table>
<pre>
Consider the following case:
```
interface
subroutine sub(arg)
integer, asynchronous :: arg(3)
end subroutine
end interface
integer :: i(10)
call sub(i( (/2, 3, 4/)))
end
```
The standard says [15.5.2.5]
```
If the procedure is nonelemental, the dummy argument does not have the VALUE attribute, and the actual argument is an array section having a vector subscript, the dummy argument is not definable and shall not have the ASYNCHRONOUS, INTENT (OUT), INTENT (INOUT), or VOLATILE attributes.
```
Flang currently is missing the diagnose.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8U91uozwQfRpzYxWBgRQuuKBJoy9SlUhf00p7afAAXjl25J-s8varcVI16XYXWQbG83Pm-Ax3Tk4aoCXVE6lWCQ9-NrZdcS1BLZcz6KQ34twujXZSgKV-BjoapcwvqSc6cAek6Ei2IllHFtl1xV96eaT2YEc-wJ2VUhd6a4KXGvCTsJrbibDmi9clfgJL2JJyd9bDbI02wVEsW3Q0RtXFn5GgxU2Nu0M8-h7WtdhHcklYnWdfcw9cqStmdKCE1YStGSIscCsJW2PMZX0p_C1Vl30_A3Wea8GtoI6fHSXVU16lVcrSilSrb0M3Y7ySozUDiGCBSke10aDgANpzhYDQQYTD4YxsBbRTYQD9PJ35CaLDe_fy9ky591b2wUPkW4t4xAcfuPoMlo5yTbm1_EwdDF4ajXlQEJyeYPDGIj9usPLo_wJAXsoLGKXmvYJYzM1I7R2s7vXHdvnf_7vt7u0VU222--ftHjnfve0jxbe2zfbTaix93710-83LTVsu_ccFrBVHTQdrQXt1RowH6Rz2FTuQfNLGQZqIthBN0fAE2vwxXzSseMybZG7zuq7Y2IiybB5BZM3QMMiLLOPDAgQrykS2LGNlVrE6b_Iqb1LIM1byRZ31YyXqSpAygwOXKlXqdEiNnRLpXIC2KRZZlijeg3JxVhnrw0QYqo4wNiJyUnSjNdqjyhjDabYtpnnow-RImSnpvPtM7KVXce5j26Ra0e5mvlD-H81_NE7NSIO-ubI7BVxVMhhrwR2NFpE3cz-1UQVJsKqdvT9ilTgs60n6OfTpYA6ErRHi9fVwtOYnDJ6wdSTCEba-cHFq2e8AAAD__x97c4Q">