File: class_95.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 (28 lines) | stat: -rw-r--r-- 658 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
program class_95
    implicit none

    character(len=5) :: arr(2) = ["hello", "world"]

    call driver(arr)

contains

    subroutine driver(generic)
        class(*) :: generic(:)

        select type (generic)
        type is (character(len=*))
            call get_fixedarray_fixed_length_c(generic)
        class default
            print *, "Unsupported type"
        end select
    end subroutine driver


    subroutine get_fixedarray_fixed_length_c(x)
        character(len=5), intent(in) :: x(2)
        if (x(1) /= "hello") error stop
        if (x(2) /= "world") error stop
    end subroutine get_fixedarray_fixed_length_c

end program class_95