aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/bind_c_procs_3.f90
blob: d58289f71249d8103ae40bea5ea5aaf36db50adb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
! { dg-do run }
!
! Test the fix for PR92123, in which 'dat' caused an error with the message
! "Scalar variable 'dat' at ?? with POINTER or ALLOCATABLE in procedure Fsub
! with BIND(C) is not yet supported."
!
! Contributed by Vipul Parekh  <parekhvs@gmail.com>
!
module m
   use, intrinsic :: iso_c_binding, only : c_int
contains
   subroutine Fsub( dat ) bind(C, name="Fsub")
      !.. Argument list
      integer(c_int), allocatable, intent(out) :: dat
      dat = 42
      return
   end subroutine
end module m

   use, intrinsic :: iso_c_binding, only : c_int
   use m, only : Fsub
   integer(c_int), allocatable :: x
   call Fsub( x )
   if (x .ne. 42) stop 1
end