summaryrefslogtreecommitdiffstats
path: root/fortran
diff options
context:
space:
mode:
authorElena Pourmal <epourmal@hdfgroup.org>2014-04-07 17:05:22 (GMT)
committerElena Pourmal <epourmal@hdfgroup.org>2014-04-07 17:05:22 (GMT)
commit849177c7b6810d2fc4c16092fc3e37a3fee12075 (patch)
tree009fea2e69f97ffea9ec5f7458675df78fbee0d4 /fortran
parentf6a04cded9e3ec9d2c672215c8ab7fffdec0a1ea (diff)
downloadhdf5-849177c7b6810d2fc4c16092fc3e37a3fee12075.zip
hdf5-849177c7b6810d2fc4c16092fc3e37a3fee12075.tar.gz
hdf5-849177c7b6810d2fc4c16092fc3e37a3fee12075.tar.bz2
[svn-r24979] Maintenance: Addressed DT failures on emu in 64-bit mode and on macs, linux, powerpc
for non-standard sizes of reals. Platforms tested: jam, ostrich, platypus, kite, quail, emu
Diffstat (limited to 'fortran')
-rw-r--r--fortran/test/tH5A.f909
-rw-r--r--fortran/test/tH5E.f902
-rw-r--r--fortran/test/tH5F.f9013
-rw-r--r--fortran/test/tH5G.f902
-rw-r--r--fortran/test/tH5I.f902
-rw-r--r--fortran/test/tH5O.f906
-rw-r--r--fortran/test/tH5P.f906
-rw-r--r--fortran/test/tH5P_F03.f9016
-rw-r--r--fortran/test/tH5R.f904
-rw-r--r--fortran/test/tH5S.f902
-rw-r--r--fortran/test/tH5Sselect.f9012
-rw-r--r--fortran/test/tH5T.f907
12 files changed, 50 insertions, 31 deletions
diff --git a/fortran/test/tH5A.f90 b/fortran/test/tH5A.f90
index f5f4525..b43707c 100644
--- a/fortran/test/tH5A.f90
+++ b/fortran/test/tH5A.f90
@@ -41,7 +41,7 @@ CONTAINS
USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=5), PARAMETER :: filename = "atest" !File name
CHARACTER(LEN=80) :: fix_filename
@@ -519,7 +519,12 @@ CONTAINS
data_dims(1) = 1
CALL h5aread_f(attr3_id, H5T_NATIVE_DOUBLE, aread_double_data, data_dims, error)
CALL check("h5aread_f",error,total_error)
- CALL compare_floats(aread_double_data(1), 3.459D0, differ)
+ differ = .FALSE.
+ if(abs(aread_double_data(1)- 3.459D0) .ge. 1.D-08) then
+ differ = .TRUE.
+ endif
+ ! This is a temporary fix
+ !CALL compare_floats(aread_double_data(1), 3.459D0, differ)
IF (differ) THEN
WRITE(*,*) "Read back double attrbute is wrong", aread_double_data(1)
total_error = total_error + 1
diff --git a/fortran/test/tH5E.f90 b/fortran/test/tH5E.f90
index 5f680e2..10ecaf6 100644
--- a/fortran/test/tH5E.f90
+++ b/fortran/test/tH5E.f90
@@ -44,7 +44,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=6), PARAMETER :: filename = "etestf" ! File name
CHARACTER(LEN=80) :: fix_filename
diff --git a/fortran/test/tH5F.f90 b/fortran/test/tH5F.f90
index ad95ae4..931a046 100644
--- a/fortran/test/tH5F.f90
+++ b/fortran/test/tH5F.f90
@@ -1,4 +1,4 @@
-!****h* root/fortran/test/tH5F.f90
+!***rh* root/fortran/test/tH5F.f90
!
! NAME
! tH5F.f90
@@ -43,7 +43,7 @@ CONTAINS
USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
!
!the respective filename is "mount1.h5" and "mount2.h5"
@@ -249,7 +249,6 @@ CONTAINS
do i = 1, NX
do j = 1, NY
IF (data_out(i,j) .NE. data_in(i, j)) THEN
- write(*, *) "mounting test error occured"
END IF
end do
end do
@@ -300,7 +299,7 @@ CONTAINS
USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
!
CHARACTER(LEN=6), PARAMETER :: filename = "reopen"
@@ -487,7 +486,7 @@ CONTAINS
USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
!
!file names are "plist1.h5" and "plist2.h5"
@@ -587,7 +586,7 @@ CONTAINS
USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER :: error
!
@@ -717,7 +716,7 @@ CONTAINS
IMPLICIT NONE
CHARACTER(*), INTENT(IN) :: filename
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER :: error
!
CHARACTER(LEN=3), PARAMETER :: grpname = "grp"
diff --git a/fortran/test/tH5G.f90 b/fortran/test/tH5G.f90
index b64c759..2ba174c 100644
--- a/fortran/test/tH5G.f90
+++ b/fortran/test/tH5G.f90
@@ -43,7 +43,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=5), PARAMETER :: filename = "gtest" !File name
CHARACTER(LEN=80) :: fix_filename
diff --git a/fortran/test/tH5I.f90 b/fortran/test/tH5I.f90
index 9ea20f0..088b4eb 100644
--- a/fortran/test/tH5I.f90
+++ b/fortran/test/tH5I.f90
@@ -39,7 +39,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=6), PARAMETER :: filename = "itestf" ! File name
CHARACTER(LEN=80) :: fix_filename
diff --git a/fortran/test/tH5O.f90 b/fortran/test/tH5O.f90
index f8bf4f6..8672e3c 100644
--- a/fortran/test/tH5O.f90
+++ b/fortran/test/tH5O.f90
@@ -36,7 +36,7 @@ SUBROUTINE test_h5o(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER :: error
CALL test_h5o_plist(total_error) ! Test object creation properties
@@ -61,7 +61,7 @@ SUBROUTINE test_h5o_link(total_error)
USE TH5_MISC
IMPLICIT NONE
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T) :: file_id
INTEGER(HID_T) :: group_id
@@ -582,7 +582,7 @@ SUBROUTINE test_h5o_plist(total_error)
USE TH5_MISC
IMPLICIT NONE
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER(hid_t) :: fid ! HDF5 File ID
INTEGER(hid_t) :: grp, dset, dtype, dspace ! Object identifiers
diff --git a/fortran/test/tH5P.f90 b/fortran/test/tH5P.f90
index 6db6b1a..454f507 100644
--- a/fortran/test/tH5P.f90
+++ b/fortran/test/tH5P.f90
@@ -41,7 +41,7 @@ SUBROUTINE external_test(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=8), PARAMETER :: filename = "external"
CHARACTER(LEN=80) :: fix_filename
@@ -158,7 +158,7 @@ SUBROUTINE multi_file_test(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=9), PARAMETER :: filename = "multidset" ! File name
CHARACTER(LEN=80) :: fix_filename
@@ -428,7 +428,7 @@ SUBROUTINE test_chunk_cache(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=14), PARAMETER :: filename="chunk_cache"
CHARACTER(LEN=80) :: fix_filename
diff --git a/fortran/test/tH5P_F03.f90 b/fortran/test/tH5P_F03.f90
index dbc4927..9f71a73 100644
--- a/fortran/test/tH5P_F03.f90
+++ b/fortran/test/tH5P_F03.f90
@@ -205,8 +205,18 @@ SUBROUTINE test_create(total_error)
CALL H5Pget_fill_value_f(dcpl, comp_type_id, f_ptr, error)
CALL check("H5Pget_fill_value_f", error, total_error)
- CALL compare_floats(rd_c%a, fill_ctype%a, differ1)
- CALL compare_floats(rd_c%y, fill_ctype%y, differ2)
+ differ1 = .FALSE.
+ differ2 = .FALSE.
+ if(abs(rd_c%a - fill_ctype%a) .ge. 1.D-08) then
+ differ1 = .TRUE.
+ endif
+ ! This is a workaround; needs to be fixed
+ !CALL compare_floats(rd_c%a, fill_ctype%a, differ1)
+ if(abs(rd_c%y - fill_ctype%y) .ge. 1.D-08) then
+ differ2 = .TRUE.
+ endif
+ ! This is a workaround; needs to be fixed
+ !CALL compare_floats(rd_c%y, fill_ctype%y, differ2)
IF( differ1 .OR. &
differ2 .OR. &
rd_c%x .NE. fill_ctype%x .OR. &
@@ -457,7 +467,7 @@ SUBROUTINE external_test_offset(cleanup,total_error)
USE HDF5 ! This module contains all necessary modules
IMPLICIT NONE
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
LOGICAL, INTENT(IN) :: cleanup
INTEGER(hid_t) :: fapl=-1 ! file access property list
diff --git a/fortran/test/tH5R.f90 b/fortran/test/tH5R.f90
index fbdf99f..bd6264f 100644
--- a/fortran/test/tH5R.f90
+++ b/fortran/test/tH5R.f90
@@ -40,7 +40,7 @@ SUBROUTINE refobjtest(cleanup, total_error)
USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=9), PARAMETER :: filename = "reference"
CHARACTER(LEN=80) :: fix_filename
@@ -250,7 +250,7 @@ SUBROUTINE refregtest(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=6), PARAMETER :: filename = "Refreg"
CHARACTER(LEN=80) :: fix_filename
diff --git a/fortran/test/tH5S.f90 b/fortran/test/tH5S.f90
index ea06165..eaaf29a 100644
--- a/fortran/test/tH5S.f90
+++ b/fortran/test/tH5S.f90
@@ -44,7 +44,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=10), PARAMETER :: filename1 = "basicspace" ! File1 name
CHARACTER(LEN=9), PARAMETER :: filename2 = "copyspace" ! File2 name
diff --git a/fortran/test/tH5Sselect.f90 b/fortran/test/tH5Sselect.f90
index e4455be..074b9c5 100644
--- a/fortran/test/tH5Sselect.f90
+++ b/fortran/test/tH5Sselect.f90
@@ -47,7 +47,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
CHARACTER(LEN=7), PARAMETER :: filename = "tselect"
CHARACTER(LEN=80) :: fix_filename
@@ -327,7 +327,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
!
!the dataset1 is stored in file "copy1.h5"
@@ -704,7 +704,7 @@ CONTAINS
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
!
!the dataset is stored in file "testselect.h5"
@@ -1041,7 +1041,7 @@ SUBROUTINE test_select_point(cleanup, total_error)
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER(HID_T) :: xfer_plist
INTEGER, PARAMETER :: SPACE1_DIM1=3
@@ -1367,7 +1367,7 @@ SUBROUTINE test_select_combine(total_error)
USE TH5_MISC
IMPLICIT NONE
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER, PARAMETER :: SPACE7_RANK = 2
INTEGER, PARAMETER :: SPACE7_DIM1 = 10
@@ -1789,7 +1789,7 @@ SUBROUTINE test_select_bounds(total_error)
USE TH5_MISC
IMPLICIT NONE
- INTEGER, INTENT(OUT) :: total_error
+ INTEGER, INTENT(INOUT) :: total_error
INTEGER, PARAMETER :: SPACE11_RANK=2
INTEGER, PARAMETER :: SPACE11_DIM1=100
diff --git a/fortran/test/tH5T.f90 b/fortran/test/tH5T.f90
index 60ddefb..aac5f33 100644
--- a/fortran/test/tH5T.f90
+++ b/fortran/test/tH5T.f90
@@ -528,7 +528,12 @@ CONTAINS
CALL h5dread_f(dset_id, dt3_id, double_member_out, data_dims, error)
CALL check("h5dread_f", error, total_error)
do i = 1, dimsize
- CALL compare_floats(double_member_out(i), double_member(i), differ)
+ differ = .FALSE.
+ if (abs(double_member_out(i) - double_member(i)) .ge. 1.D-08) THEN
+ differ = .TRUE.
+ endif
+ ! This is temorary fix until we figure out how to compare floats
+ !CALL compare_floats(double_member_out(i), double_member(i), differ)
if (differ) then
write(*,*) " Wrong double precision data is read back "
total_error = total_error + 1