File: use_01.f90

package info (click to toggle)
lfortran 0.60.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 58,412 kB
  • sloc: cpp: 173,406; f90: 80,491; python: 17,586; ansic: 9,610; yacc: 2,356; sh: 1,401; fortran: 895; makefile: 37; javascript: 15
file content (40 lines) | stat: -rw-r--r-- 541 bytes parent folder | download | duplicates (2)
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