File: tuple_test_03_.f90

package info (click to toggle)
lfortran 0.60.0-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 58,416 kB
  • sloc: cpp: 173,406; f90: 80,491; python: 17,586; ansic: 9,610; yacc: 2,356; sh: 1,401; fortran: 895; makefile: 38; javascript: 15
file content (27 lines) | stat: -rw-r--r-- 600 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
module tuple_test_03_mod
   implicit none
   real :: eps = 1e-12

contains
   subroutine tests()
      _lfortran_tuple(integer, real, character(len=:)) :: t1

      t1 = _lfortran_tuple_constant(1, 2.0, "3")
      integer :: x
      real :: y
      character(len=:), allocatable :: s

      x = _lfortran_get_item(t1, -3)
      y = _lfortran_get_item(t1, -2)
      s = _lfortran_get_item(t1, -1)

      if (x /= 1) error stop
      if (abs(y - 2.0) > eps) error stop
      if (s /= "3") error stop
   end subroutine
end module

program run_tuples
   use tuple_test_03_mod
   call tests()
end program