File: use_01.f90

package info (click to toggle)
lfortran 0.45.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 46,332 kB
  • sloc: cpp: 137,068; f90: 51,260; python: 6,444; ansic: 4,277; yacc: 2,285; fortran: 806; sh: 524; makefile: 30; javascript: 15
file content (40 lines) | stat: -rw-r--r-- 541 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
30
31
32
33
34
35
36
37
38
39
40
MODULE one
   IMPLICIT NONE
   INTEGER :: nx = 1

CONTAINS

   SUBROUTINE sub (n)
      INTEGER, INTENT(INOUT) :: n
      n = n + 1
   END SUBROUTINE sub

   INTEGER FUNCTION fun() result(i)
      i = 3
   END FUNCTION

END MODULE one


MODULE two
   USE one, ONLY: nx, sub, fun
   IMPLICIT NONE
END MODULE two


PROGRAM test
   USE two
   USE one, ONLY: nx, sub, fun

   PRINT *, nx
   IF (nx /= 1) ERROR STOP

   CALL sub ( nx )

   PRINT *, nx
   IF (nx /= 2) ERROR STOP

   PRINT *, fun()
   if (fun() /= 3) ERROR STOP

END PROGRAM test