GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: misc/assert_eq_m.F90 Lines: 0 28 0.0 %
Date: 2023-06-30 12:51:15 Branches: 0 20 0.0 %

Line Branch Exec Source
1
! $Id$
2
MODULE assert_eq_m
3
4
  implicit none
5
6
  INTERFACE assert_eq
7
     MODULE PROCEDURE assert_eq2,assert_eq3,assert_eq4,assert_eqn
8
  END INTERFACE
9
10
  private assert_eq2,assert_eq3,assert_eq4,assert_eqn
11
12
CONTAINS
13
14
  FUNCTION assert_eq2(n1,n2,string)
15
    CHARACTER(LEN=*), INTENT(IN) :: string
16
    INTEGER, INTENT(IN) :: n1,n2
17
    INTEGER  assert_eq2
18
    if (n1 == n2) then
19
       assert_eq2=n1
20
    else
21
       write (*,*) 'nrerror: an assert_eq failed with this tag: ', &
22
            string
23
       print *, 'program terminated by assert_eq2'
24
       stop 1
25
    end if
26
  END FUNCTION assert_eq2
27
  !BL
28
  FUNCTION assert_eq3(n1,n2,n3,string)
29
    CHARACTER(LEN=*), INTENT(IN) :: string
30
    INTEGER, INTENT(IN) :: n1,n2,n3
31
    INTEGER  assert_eq3
32
    if (n1 == n2 .and. n2 == n3) then
33
       assert_eq3=n1
34
    else
35
       write (*,*) 'nrerror: an assert_eq failed with this tag: ', &
36
            string
37
       print *, 'program terminated by assert_eq3'
38
       stop 1
39
    end if
40
  END FUNCTION assert_eq3
41
  !BL
42
  FUNCTION assert_eq4(n1,n2,n3,n4,string)
43
    CHARACTER(LEN=*), INTENT(IN) :: string
44
    INTEGER, INTENT(IN) :: n1,n2,n3,n4
45
    INTEGER  assert_eq4
46
    if (n1 == n2 .and. n2 == n3 .and. n3 == n4) then
47
       assert_eq4=n1
48
    else
49
       write (*,*) 'nrerror: an assert_eq failed with this tag: ', &
50
            string,n1,n2,n3,n4
51
       print *, 'program terminated by assert_eq4'
52
       stop 1
53
    end if
54
  END FUNCTION assert_eq4
55
  !BL
56
  FUNCTION assert_eqn(nn,string)
57
    CHARACTER(LEN=*), INTENT(IN) :: string
58
    INTEGER, DIMENSION(:), INTENT(IN) :: nn
59
    INTEGER  assert_eqn
60
    if (all(nn(2:) == nn(1))) then
61
       assert_eqn=nn(1)
62
    else
63
       write (*,*) 'nrerror: an assert_eq failed with this tag: ', &
64
            string
65
       print *, 'program terminated by assert_eqn'
66
       stop 1
67
    end if
68
  END FUNCTION assert_eqn
69
70
END MODULE assert_eq_m