File: intrinsics_233.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 (29 lines) | stat: -rw-r--r-- 697 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
29
program intrinsics_233
    implicit none
    real :: x
    real :: z = -1.0
    real :: y(3)
    x = -1.0
    x = sqrt(x)
    y = [sqrt(x), log(x), exp(x)]

    print*, x
    print *, isnan(x)
    if (isnan(x) .neqv. .true.) error stop
    print*, y(1)
    print *, isnan(y(1))
    if (isnan(y(1)) .neqv. .true.) error stop
    print*, y(2)
    print *, isnan(y(2))
    if (isnan(y(2)) .neqv. .true.) error stop
    print*, y(3)
    print *, isnan(y(3))
    if (isnan(y(3)) .neqv. .true.) error stop

    !tests for compile time argument
    print *, isnan(1.0)
    if (isnan(1.0) .neqv. .false.) error stop
    print *, isnan(sqrt(z))
    if (isnan(sqrt(z)) .neqv. .true.) error stop

end program