<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/67946>67946</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [Flang] Compilation error of a dummy argument of Derived Types used in MODULE PROCEDURE subprogram statement
        </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 : 18.0.0(cc627828f5176c6d75a25f1756d387d18539c1fb)
```

A dummy argument of `Derived Types` used in `MODULE PROCEDURE` subprogram statement results in a compilation error.

The following are the test program, Flang-new, Gfortran and ifort compilation result.

sngf_c1249_105b_2.f90:
```fortran
module m
 interface
     module subroutine sub(a)
       type ty
 sequence
          integer ::i
       end type ty
 type(ty)::a
     end subroutine
  end interface
contains
  module subroutine sub(a)
    type ty
       sequence
       integer ::i
 end type ty
    type(ty)::a
    if (a%i /= 10) print *,'ng'
 write(6,*) "sub"
  end subroutine
end module m

program main
  use m
  type ty
     sequence
     integer ::i
  end type ty
  type(ty) :: a
  a%i=10
  call sub(a)
  print *,'pass'
end program main
```

```
 flang-new sngf_c1249_105b_2.f90
error: Semantic errors in sngf_c1249_105b_2.f90
./sngf_c1249_105b_2.f90:17:15: error: Dummy argument 'a' has type ty; the corresponding argument in the interface body has type ty
      type(ty)::a
                ^
./sngf_c1249_105b_2.f90:8:18: Declaration of 'a'
         type(ty)::a
 ^
$
```

```
$ gfortran sngf_c1249_105b_2.f90
$
```

```
$ ifort sngf_c1249_105b_2.f90
$
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJycVV1zozYU_TXiRRMPXCE-Hnjwhrgv7Wxnu9vXjIAL1g5IriQ243_fEWDHZkmariZDrI97rs6RdK6wVnYKsSD8E-FlIEZ31KbQR6Uf2u9BpZtzQZJw-QtLEu7_RmOlVlS3tO2F6h4UvlDC9jTKduEuJJDVdQJpBlnLozSpkyblAngbpTxpWJY2UcZZXkdtRSCfIVcZ5u-eNuMwnKkw3Tigcj4hScISjfyBDf16PqElSUhHiw2Vys_98bn89vsT_fPL58en8tuXJz9tx-pkdGfEQK0TDicog3bsnfVhgtZ6OMleOE8KjdFmd7uNr0ekre57_SJVR4VB6o5IHVpHF1wCj_RwUcJ3fmu1cUYoKlRDpe_c5ZiT3yWxqmuf6wji_DkKefUMuzYPCduv5Flw59FBN2OPdJh7VCqHphU1Ln3fliV2rIwenVTTTwKZuCpP5-bOJ6TuvIxZ_GdEdYc0NZ-iQ-MPm7C9vJtG1axQfI9A5s4-2RQhbiL8-td9XSb86IpIrZUTUtnLko9xut_K3DZpbXP6mc2C-SYh2dJ5E1xSAgfCShqFBHJ6MlI5SmBP4JFAqjoC6RL2YqTziMk0tferCcBEB24VWevkx-5Pf_5e7vkgpLrEj_b1imyosqHJG6e8IcmtIMtyepVkkoKwMgovI7Xo-43DWgl0EtZeJfJJf2a1aRerwRtv2n5cM75_7n7bf-EglJP1bACTMbwTtiNweOvJRqn_cA96RS_vjYxAKgik9CjsVVL2afKVWhuD9qRVM7vNEiHVNHt9GtQb8138zZ1-_-HdNMKf_ptP5ulkEwuse2FmD_NePLNYQb-d_JqNQPzxcyQQ0-7ip-8cyf8GnX35FxCDpmBNznIRYBEleQIQ8ZQHx6KFugHB4wo5hkkk4jRqWByzKM-ShDEIZAEhsCgMIYxZzvguRYzSmkeN4FkVMyRxiIOQ_a7vfww7bbpAWjtikaR5nAS9qLC3U6UGmK43YfvWaOVQNd4yeBmYwoc-VGNnSRz20jr7Cuak66dKP1Urwkv6uC59_mDFRuG9q7rXkruut5vFNhhNXxydO1l_H-BA4NBJdxyrXa0HAge_veXfw8no71g7AoeJuCVwmLj_GwAA__-Gd3pZ">