31
32
33
34
35
36
37
38
39
40 integer, intent(out) :: value
41 character (len=*), intent(in ) :: name
42
43
44
45 integer :: Lstr, status
46 character (len=40) :: string
47 character (len=512) :: msg
48
49
50
51
52
53
54 CALL get_environment_variable (name, string, lstr, status)
55
56
57
58 IF ((lstr.gt.0).and.(status.eq.0)) THEN
59 READ (string, *, iostat=status, iomsg=msg) value
60 IF (master.and.(status.ne.0)) THEN
61 WRITE (stdout,10) trim(name), trim(string), trim(msg)
62 END IF
63 ELSE
64 status=1
65 value=-1
66 IF (master) THEN
67 WRITE (stdout,20) trim(name)
68 END IF
69 END IF
70
71 10 FORMAT (/,' GET_ENV_I - Error while converting string to', &
72 & ' integer, name = ',a,', value = ',a,/,13x,'ErrMsg: ',a)
73 20 FORMAT (/,' GET_ENV_I - Cannot find environmental variable', &
74 & ', name = ',a)
75
76 RETURN