1! RUN: %S/test_modfile.sh %s %t %flang_fc1
2! REQUIRES: shell
3module m
4  character(2), parameter :: prefix = 'c_'
5  integer, bind(c, name='c_a') :: a
6  procedure(sub), bind(c, name=prefix//'b'), pointer :: b
7  type, bind(c) :: t
8    real :: c
9  end type
10  real :: d
11  external :: d
12  bind(c, name='dd') :: d
13  real :: e
14  bind(c, name='ee') :: e
15  external :: e
16  bind(c, name='ff') :: f
17  real :: f
18  external :: f
19contains
20  subroutine sub() bind(c, name='sub')
21  end
22end
23
24!Expect: m.mod
25!module m
26!  character(2_4,1),parameter::prefix="c_"
27!  integer(4),bind(c, name="c_a")::a
28!  procedure(sub),bind(c, name="c_b"),pointer::b
29!  type,bind(c)::t
30!    real(4)::c
31!  end type
32!  procedure(real(4)),bind(c, name="dd")::d
33!  procedure(real(4)),bind(c, name="ee")::e
34!  procedure(real(4)),bind(c, name="ff")::f
35!contains
36!  subroutine sub() bind(c, name="sub")
37!  end
38!end
39