test_anyscalar_to_double Subroutine

subroutine test_anyscalar_to_double()

Arguments

None

Variables

Type Visibility Attributes Name Initial
real, public :: infinity

character(len=*),parameter :: line=’infinity’

character(len=8), public :: line = 'infinity'

Source Code

subroutine test_anyscalar_to_double()

real :: infinity
!!character(len=*),parameter :: line='infinity'
character(len=8)           :: line='infinity'
read(line,*)infinity
call unit_test_start('anyscalar_to_double',msg='')
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0_int8))     .eq. huge(0_int8),     huge(0_int8))
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0_int16))    .eq. huge(0_int16),    huge(0_int16))
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0_int32))    .eq. huge(0_int32),    huge(0_int32))
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0_int64))    .eq. huge(0_int64),    huge(0_int64))
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0.0_real32)) .eq. huge(0.0_real32), huge(0.0_real32))
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0.0_real64)) .eq. huge(0.0_real64), huge(0.0_real64))

#ifdef FLOAT128
call unit_test('anyscalar_to_double',anyscalar_to_double(huge(0.0_real128)) .eq. infinity,       huge(0.0_real128))
call unit_test('anyscalar_to_double',anyscalar_to_double(1234.0_real128)    .eq. 1234.0_real128, 1234.0_real128)
#endif
call unit_test_done('anyscalar_to_double',msg='')
end subroutine test_anyscalar_to_double