<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/107782>107782</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Flang] Compilation error when a dummy argument defined as assumed-rank is used within kind intrinsic function
</td>
</tr>
<tr>
<th>Labels</th>
<td>
flang:frontend
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ohno-fj
</td>
</tr>
</table>
<pre>
```
Version of flang-new : 20.0.0(357bd61744bb8cc2b9b07447294fa977e5758550/AArch64
```
When a dummy argument defined as `assumed-rank` is used within `kind` intrinsic function, a compilation-time error occurs.
The following are the test program, Flang-new, Gfortran and ifort compilation/execution result.
FT_assumed_rank_ovr_gen_01_2.f90:
```fortran
MODULE mod4
IMPLICIT NONE
TYPE point
REAL :: x, y
contains
procedure,pass::assign_point
generic ::assignment(=) =>assign_point
END TYPE point
CONTAINS
recursive SUBROUTINE assign_point (px,ax)
class(point), INTENT(inout) :: px
REAL, INTENT(in) :: ax(..)
px%x=10.99
if(kind(ax)/=4)print*,201
END SUBROUTINE assign_point
END MODULE mod4
program main
use mod4
REAL :: r,r1(3),r2(4,4)
TYPE (point) :: a
print*,"PASS"
end program main
```
```
$ flang-new FT_assumed_rank_ovr_gen_01_2.f90
error: Semantic errors in FT_assumed_rank_ovr_gen_01_.f90
./FT_assumed_rank_ovr_gen_01_.f90:14:13: error: Assumed-rank array cannot be forwarded to 'x=' argument
if(kind(ax)/=4)print*,201
^^
$
```
```
$ gfortran FT_assumed_rank_ovr_gen_01_.f90; ./a.out
PASS
$
```
```
$ ifort -diag-disable=10448 FT_assumed_rank_ovr_gen_01_2.f90
PASS
$
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJycVV9vozgQ_zTOyyjIDBDgIQ80f06Rumm1Te90T5EBh3gX7Mg2bfrtTwbS0rR33b0IQRjGM7_5zT9mjKgk53MS3ZBoOWGtPSo9V0eppocfk1yVL3Myo8NFl4Rmf3JthJKgDnComaymkj8DCTJA6lGPEkyCKM7LmR-HYZ4nRYF5mtM4DGNMwwNL45hHcZREESW4zjJdHGdhb_nK0V9HLoFB2TbNCzBdtQ2XFkp-EJKXwAyQGWXGtA0vp5rJn2RGQRhoDS_hWdijkE7jp5Bl90VaLaQRBRxaWVihJMEFMChUcxI1c4KpFQ0HrrXSoIqi1cYbgHX33ZHDQdW1ehayAqY52CMHy42Fk1aVZo2zuL5w4l7-OChtNZPAZAnCvYz9EVzzMy9a9x80N21t3zlc7_ZDfHsX31496X3F5Z76e_QOKSVBdkXc4K6XfrtbPt6uoFHlwC_A5tv97Wax2cH2bru6CHd_36_gpIS0FwkAfF9lty6rLrFnF8rL8LFQ0jIhzUj3pFXBy1ZzgosTM6Y_1pfW_tpwxSXXooCxkksswYQES4IpuEew-uz4arv8gHZxt91lm-3DRUdzlzjxxOHh8eb73eNus13B2BgQTE4uJHYmmL4hK2oHHZPeNqYu6M12t9ruCCZCqtb24DpKTue3g46qK-WRpvOSeN47V859dCbB0qdeOpKLA8GkK1hMenS4JsEyJJiedIcqI7hA6g9HHB__EmWv4RQ-lEF_H0oWGibkBUFr-LtyGReBJrjQvuvunhuNBJOQ4CIchdYlZ8ThKwmDwigKgnifPTwQxP4blyV8xHQ1Ej4XYjiaRF82Te_NNblD9sAbJq0o-rY3IOR_WXgz4BFcf6UYZH7oboFz9OoxG40sYFqzFyiYlMpC7uaLfma65CVYBQTjc9cT8ev4G3j83UJ59yPRyl0X7n6P6Ooy0b4M_gYcR8xzjdOj6PL9_9z2s3NaClZNS2FYXvOufcIw-cWM_4L3STkPyjRI2YTP_RijJIhCP5kc5xgULOV5worYL4sZLWmIQeD7QVCmMY3TiZgjxZCmNEEMgyDxZiGlPi_DuEjjMk1TElLeMFF7df3UeEpXE2FMy-c-jeMEJzXLeW26JYzY1TIJsoNW0nKXY3SrWc_d2WneVoaEtBbGmjdrVti6W-Ld-iHREhZve2ZYac9f7dPxMr3epK7YPtmhk1bX86O1p27o45rguhL22OZeoRqCawdweExPWv3ghSW47mI3BNdD-E9z_CcAAP__A7J-dw">