File: pointer_02.f90

package info (click to toggle)
lfortran 0.58.0-3
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 54,508 kB
  • sloc: cpp: 162,179; f90: 68,251; python: 17,476; ansic: 6,278; yacc: 2,334; sh: 1,317; fortran: 892; makefile: 34; javascript: 15
file content (26 lines) | stat: -rw-r--r-- 675 bytes parent folder | download | duplicates (4)
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