File: pointer_02.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 (26 lines) | stat: -rw-r--r-- 675 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
MODULE solvar_module
    REAL, DIMENSION(:,:), POINTER :: ptr_out
 CONTAINS
    SUBROUTINE solvar_allocate
       NULLIFY(ptr_out)
       ALLOCATE(ptr_out(5,1))
    END SUBROUTINE solvar_allocate
 
    SUBROUTINE dim3_sweep(ptr_out)
       REAL, DIMENSION(5), INTENT(OUT) :: ptr_out
       PRINT *, ptr_out
       STOP
    END SUBROUTINE dim3_sweep
 
    SUBROUTINE octsweep
       !REAL, DIMENSION(5), pointer :: x
       !x = ptr_out(:,1)
       CALL dim3_sweep( ptr_out(:,1) )
    END SUBROUTINE octsweep
 END MODULE solvar_module
 
 PROGRAM snap_main
    USE solvar_module, ONLY: solvar_allocate, octsweep
    CALL solvar_allocate
    CALL octsweep
 END PROGRAM snap_main