diff options
author | Elena Pourmal <epourmal@hdfgroup.org> | 2004-04-15 21:59:05 (GMT) |
---|---|---|
committer | Elena Pourmal <epourmal@hdfgroup.org> | 2004-04-15 21:59:05 (GMT) |
commit | 508b06e28609af97be50591b49066381957e9c4e (patch) | |
tree | cf889684fc36977ce9df2b9e3310b9372c26c085 /fortran/test | |
parent | da3f980be5516deea598cb1a11f79ef1c20c9257 (diff) | |
download | hdf5-508b06e28609af97be50591b49066381957e9c4e.zip hdf5-508b06e28609af97be50591b49066381957e9c4e.tar.gz hdf5-508b06e28609af97be50591b49066381957e9c4e.tar.bz2 |
[svn-r8357]
Purpose: Maintenance
Description: Fortran functions h5dwrite/read_f and h5awrite/read_f
were overloaded with the dims parameter being of type
INTEGER. It was a design flaw. dims should be of type
INTEGER(HSIZE_T). Overloading was done to assure backward
compatibility of 1.4.* branch with hdf5 1.2.* branch.
We promised to remove the old function with INTEGER dims
in 1.6.0. It was removed from the documentation but
was not removed from the source code.
Solution: Finally cleaned up the code.
Platforms tested: Windows 2000 with DEC Fortran, LInux with Intel Fortran,
Solaris 2.7 32/64-bit mode.
Misc. update:
Diffstat (limited to 'fortran/test')
-rw-r--r-- | fortran/test/fflush1.f90 | 4 | ||||
-rw-r--r-- | fortran/test/fflush2.f90 | 4 | ||||
-rw-r--r-- | fortran/test/fortranlib_test.f90 | 2 | ||||
-rw-r--r-- | fortran/test/tH5A.f90 | 7 | ||||
-rw-r--r-- | fortran/test/tH5D.f90 | 11 | ||||
-rw-r--r-- | fortran/test/tH5F.f90 | 4 | ||||
-rw-r--r-- | fortran/test/tH5G.f90 | 2 | ||||
-rw-r--r-- | fortran/test/tH5I.f90 | 2 | ||||
-rw-r--r-- | fortran/test/tH5P.f90 | 9 | ||||
-rw-r--r-- | fortran/test/tH5R.f90 | 8 | ||||
-rw-r--r-- | fortran/test/tH5S.f90 | 2 | ||||
-rw-r--r-- | fortran/test/tH5Sselect.f90 | 6 | ||||
-rw-r--r-- | fortran/test/tH5T.f90 | 2 | ||||
-rw-r--r-- | fortran/test/tH5Z.f90 | 4 | ||||
-rw-r--r-- | fortran/test/tf.f90 | 36 |
15 files changed, 50 insertions, 53 deletions
diff --git a/fortran/test/fflush1.f90 b/fortran/test/fflush1.f90 index c318bb9..cede399 100644 --- a/fortran/test/fflush1.f90 +++ b/fortran/test/fflush1.f90 @@ -82,7 +82,7 @@ !data buffers ! INTEGER, DIMENSION(NX,NY) :: data_in, data_out - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(7) :: data_dims data_dims(1) = NX data_dims(2) = NY @@ -145,7 +145,7 @@ ! if errors detected, exit with non-zero code. This is not truly fortran ! standard but likely supported by most fortran compilers. - IF (total_error .ne. 0) CALL exit (total_error) +! IF (total_error .ne. 0) CALL exit (total_error) 001 STOP diff --git a/fortran/test/fflush2.f90 b/fortran/test/fflush2.f90 index b839153..a04f56a 100644 --- a/fortran/test/fflush2.f90 +++ b/fortran/test/fflush2.f90 @@ -79,7 +79,7 @@ !data buffers ! INTEGER, DIMENSION(NX,NY) :: data_out - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(7) :: data_dims data_dims(1) = NX data_dims(2) = NY @@ -178,6 +178,6 @@ ! if errors detected, exit with non-zero code. This is not truly fortran ! standard but likely supported by most fortran compilers. - IF (total_error .ne. 0) CALL exit (total_error) +! IF (total_error .ne. 0) CALL exit (total_error) END PROGRAM FFLUSH2EXAMPLE diff --git a/fortran/test/fortranlib_test.f90 b/fortran/test/fortranlib_test.f90 index 4fa9c99..208a7e2 100644 --- a/fortran/test/fortranlib_test.f90 +++ b/fortran/test/fortranlib_test.f90 @@ -338,7 +338,7 @@ ! if errors detected, exit with non-zero code. This is not truly fortran ! standard but likely supported by most fortran compilers. - IF (total_error .ne. 0) CALL exit (total_error) +! IF (total_error .ne. 0) CALL exit (total_error) END PROGRAM fortranlibtest diff --git a/fortran/test/tH5A.f90 b/fortran/test/tH5A.f90 index faeb481..59036a5 100644 --- a/fortran/test/tH5A.f90 +++ b/fortran/test/tH5A.f90 @@ -85,8 +85,7 @@ DOUBLE PRECISION, DIMENSION(1) :: attr_double_data = 3.459 REAL, DIMENSION(1) :: attr_real_data = 4.0 INTEGER, DIMENSION(1) :: attr_integer_data = 5 - INTEGER(HSIZE_T), DIMENSION(7) :: data_dims_b - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(7) :: data_dims CHARACTER :: aread_character_data ! variable to put read back Character attr data @@ -255,8 +254,8 @@ ! ! Write the Real attribute data. ! - data_dims_b(1) = 1 - CALL h5awrite_f(attr4_id, atype4_id, attr_real_data, data_dims_b, error) + data_dims(1) = 1 + CALL h5awrite_f(attr4_id, atype4_id, attr_real_data, data_dims, error) CALL check("h5awrite_f",error,total_error) ! diff --git a/fortran/test/tH5D.f90 b/fortran/test/tH5D.f90 index 6567f23..d71e61f 100644 --- a/fortran/test/tH5D.f90 +++ b/fortran/test/tH5D.f90 @@ -45,8 +45,7 @@ INTEGER :: error ! Error flag INTEGER :: i, j !general purpose integers - INTEGER(HSIZE_T), DIMENSION(7) :: data_dims_b - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! ! Initialize the dset_data array. @@ -87,9 +86,9 @@ ! ! Write the dataset. ! - data_dims_b(1) = 4 - data_dims_b(2) = 6 - CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims_b, error) + data_dims(1) = 4 + data_dims(2) = 6 + CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error) CALL check("h5dwrite_f", error, total_error) @@ -254,7 +253,7 @@ ! INTEGER(HSIZE_T), DIMENSION(2) :: dimsr, maxdimsr INTEGER :: rankr - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! !data initialization diff --git a/fortran/test/tH5F.f90 b/fortran/test/tH5F.f90 index 8dba136..d37d94a 100644 --- a/fortran/test/tH5F.f90 +++ b/fortran/test/tH5F.f90 @@ -92,7 +92,7 @@ ! INTEGER, DIMENSION(NX,NY) :: data_in, data_out - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims filename1 = "mount1" filename2 = "mount2" @@ -326,7 +326,7 @@ !array to store data ! INTEGER, DIMENSION(4,6) :: dset_data, data_out - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! !initialize the dset_data array which will be written to the "/dset" diff --git a/fortran/test/tH5G.f90 b/fortran/test/tH5G.f90 index cb0b30d..e22b4c7 100644 --- a/fortran/test/tH5G.f90 +++ b/fortran/test/tH5G.f90 @@ -58,7 +58,7 @@ CHARACTER(LEN=100) :: commentout !comment to the file INTEGER :: nmembers INTEGER :: obj_type - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(7) :: data_dims ! ! Create the file. ! diff --git a/fortran/test/tH5I.f90 b/fortran/test/tH5I.f90 index 1ca21e4..2a4a563 100644 --- a/fortran/test/tH5I.f90 +++ b/fortran/test/tH5I.f90 @@ -50,7 +50,7 @@ INTEGER :: type !object identifier INTEGER :: error ! Error flag - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(7) :: data_dims CHARACTER(LEN=80) name_buf INTEGER(SIZE_T) buf_size INTEGER(SIZE_T) name_size diff --git a/fortran/test/tH5P.f90 b/fortran/test/tH5P.f90 index 15809bf..8972af8 100644 --- a/fortran/test/tH5P.f90 +++ b/fortran/test/tH5P.f90 @@ -164,8 +164,7 @@ INTEGER :: error ! Error flag INTEGER :: i, j !general purpose integers - INTEGER(HSIZE_T), DIMENSION(7) :: data_dims_b - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims INTEGER :: mdc_nelmts INTEGER(SIZE_T) :: rdcc_nelmts INTEGER(SIZE_T) :: rdcc_nbytes @@ -253,9 +252,9 @@ ! ! Write the dataset. ! - data_dims_b(1) = 4 - data_dims_b(2) = 6 - CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims_b, error) + data_dims(1) = 4 + data_dims(2) = 6 + CALL h5dwrite_f(dset_id, H5T_NATIVE_INTEGER, dset_data, data_dims, error) CALL check("h5dwrite_f", error, total_error) diff --git a/fortran/test/tH5R.f90 b/fortran/test/tH5R.f90 index 995a22c..bc7818a 100644 --- a/fortran/test/tH5R.f90 +++ b/fortran/test/tH5R.f90 @@ -48,9 +48,9 @@ INTEGER :: rankr = 1 TYPE(hobj_ref_t_f), DIMENSION(4) :: ref TYPE(hobj_ref_t_f), DIMENSION(4) :: ref_out - INTEGER, DIMENSION(7) :: ref_dim + INTEGER(HSIZE_T), DIMENSION(1) :: ref_dim INTEGER, DIMENSION(5) :: data = (/1, 2, 3, 4, 5/) - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! @@ -219,8 +219,8 @@ INTEGER :: error TYPE(hdset_reg_ref_t_f) , DIMENSION(2) :: ref ! Buffers to store references TYPE(hdset_reg_ref_t_f) , DIMENSION(2) :: ref_out ! - INTEGER, DIMENSION(7) :: ref_dim - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(7) :: ref_dim + INTEGER(HSIZE_T), DIMENSION(7) :: data_dims INTEGER(HSIZE_T), DIMENSION(2) :: dims = (/2,9/) ! Datasets dimensions INTEGER(HSIZE_T), DIMENSION(1) :: dimsr = (/2/) ! INTEGER(HSSIZE_T), DIMENSION(2) :: start diff --git a/fortran/test/tH5S.f90 b/fortran/test/tH5S.f90 index 49e1f1f..6f9ee8a 100644 --- a/fortran/test/tH5S.f90 +++ b/fortran/test/tH5S.f90 @@ -58,7 +58,7 @@ LOGICAL :: flag !flag to test datyspace is simple or not INTEGER :: i, j !general purpose integers - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims ! ! Initialize the dset_data array. diff --git a/fortran/test/tH5Sselect.f90 b/fortran/test/tH5Sselect.f90 index ae0d2d4..ad95ecf 100644 --- a/fortran/test/tH5Sselect.f90 +++ b/fortran/test/tH5Sselect.f90 @@ -117,7 +117,7 @@ !flag to check operation success ! INTEGER :: error, error_n - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(3) :: data_dims ! @@ -398,7 +398,7 @@ ! INTEGER :: error LOGICAL :: status - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(3) :: data_dims ! @@ -814,7 +814,7 @@ !flag to check operation success ! INTEGER :: error, error_n - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(3) :: data_dims ! !initialize the coord array to give the selected points' position diff --git a/fortran/test/tH5T.f90 b/fortran/test/tH5T.f90 index 76eb467..f2dddb4 100644 --- a/fortran/test/tH5T.f90 +++ b/fortran/test/tH5T.f90 @@ -85,7 +85,7 @@ INTEGER :: array_dims_range = 3 INTEGER :: elements = 24 ! number of elements in the array_dims array. INTEGER(SIZE_T) :: sizechar - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(1) :: data_dims LOGICAL :: flag = .TRUE. data_dims(1) = dimsize ! diff --git a/fortran/test/tH5Z.f90 b/fortran/test/tH5Z.f90 index 7425f14..91a3bc7 100644 --- a/fortran/test/tH5Z.f90 +++ b/fortran/test/tH5Z.f90 @@ -127,8 +127,8 @@ INTEGER :: num_errors = 0 ! Number of data errors INTEGER :: i, j !general purpose integers - INTEGER(HSIZE_T), DIMENSION(7) :: data_dims_b - INTEGER, DIMENSION(7) :: data_dims + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims_b + INTEGER(HSIZE_T), DIMENSION(2) :: data_dims INTEGER(HID_T) :: crp_list INTEGER :: options_mask, pix_per_block LOGICAL :: flag diff --git a/fortran/test/tf.f90 b/fortran/test/tf.f90 index 3a8a3ee..a389287 100644 --- a/fortran/test/tf.f90 +++ b/fortran/test/tf.f90 @@ -18,9 +18,9 @@ ! all the hdf5 fortran tests ! !This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: check -!DEC$endif +!FooDECSif defined(BUILD_HDF5_DLL) +!FooDECSattributes dllexport :: check +!FooDECSendif SUBROUTINE check(string,error,total_error) CHARACTER(LEN=*) :: string @@ -65,9 +65,9 @@ SUBROUTINE h5_fixname_f(base_name, full_name, fapl, hdferr) ! !This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5_fixname_f -!DEC$endif +!FooDECSif defined(BUILD_HDF5_DLL) +!FooDECSattributes dllexport :: h5_fixname_f +!FooDECSendif USE H5GLOBAL IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name @@ -83,11 +83,11 @@ INTEGER FUNCTION h5_fixname_c(base_name, base_namelen, fapl, & full_name, full_namelen) USE H5GLOBAL - !DEC$ IF DEFINED(HDF5F90_WINDOWS) - !MS$ATTRIBUTES C,reference,alias:'_H5_FIXNAME_C':: h5_fixname_c - !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: base_name - !DEC$ATTRIBUTES reference :: full_name + !FooDECS IF DEFINED(HDF5F90_WINDOWS) + !FooMSSATTRIBUTES C,reference,alias:'_H5_FIXNAME_C':: h5_fixname_c + !FooDECS ENDIF + !FooDECSATTRIBUTES reference :: base_name + !FooDECSATTRIBUTES reference :: full_name CHARACTER(LEN=*), INTENT(IN) :: base_name INTEGER :: base_namelen INTEGER(HID_T), INTENT(IN) :: fapl @@ -125,9 +125,9 @@ SUBROUTINE h5_cleanup_f(base_name, fapl, hdferr) ! !This definition is needed for Windows DLLs -!DEC$if defined(BUILD_HDF5_DLL) -!DEC$attributes dllexport :: h5_cleanup_f -!DEC$endif +!FooDECSif defined(BUILD_HDF5_DLL) +!FooDECSattributes dllexport :: h5_cleanup_f +!FooDECSendif USE H5GLOBAL IMPLICIT NONE CHARACTER(LEN=*), INTENT(IN) :: base_name ! base name @@ -139,10 +139,10 @@ INTERFACE INTEGER FUNCTION h5_cleanup_c(base_name, base_namelen, fapl) USE H5GLOBAL - !DEC$ IF DEFINED(HDF5F90_WINDOWS) - !MS$ATTRIBUTES C,reference,alias:'_H5_CLEANUP_C':: h5_cleanup_c - !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: base_name + !FooDECS IF DEFINED(HDF5F90_WINDOWS) + !FooMSSATTRIBUTES C,reference,alias:'_H5_CLEANUP_C':: h5_cleanup_c + !FooDECS ENDIF + !FooDECSATTRIBUTES reference :: base_name CHARACTER(LEN=*), INTENT(IN) :: base_name INTEGER :: base_namelen INTEGER(HID_T), INTENT(IN) :: fapl |