File: interface_32.f90

package info (click to toggle)
lfortran 0.61.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 61,892 kB
  • sloc: cpp: 181,767; f90: 92,175; python: 17,616; ansic: 10,170; yacc: 2,377; sh: 1,444; fortran: 892; makefile: 38; javascript: 15
file content (29 lines) | stat: -rw-r--r-- 568 bytes parent folder | download
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
26
27
28
29
module interface_32_clientmod

   use interface_32_mymod
   use interface_32_wrappermod, only: WrapperType

contains

   function init() result(wrap)
      type(WrapperType) :: wrap
      type(MyType)      :: obj
      obj = MyType()
      wrap = WrapperType(obj)
   end function init

end module interface_32_clientmod

program interface_32
   use interface_32_mymod
   use interface_32_wrappermod
   use interface_32_clientmod
   implicit none

   type(WrapperType) :: w

   w = init()
   if (w%obj%val /= 42) error stop
   print *, "PASS"
end program interface_32