summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2012-09-05 03:46:58 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2012-09-05 03:46:58 (GMT)
commit1c9e159ffe6cf85a5c076f747758dc47eb7a111a (patch)
tree9d6f39eeec727c70644a169980e6d3aa5fa30abb
parent7740e853f4d39ce7a7a6462a3089aa86abbe5f17 (diff)
downloadhdf5-1c9e159ffe6cf85a5c076f747758dc47eb7a111a.zip
hdf5-1c9e159ffe6cf85a5c076f747758dc47eb7a111a.tar.gz
hdf5-1c9e159ffe6cf85a5c076f747758dc47eb7a111a.tar.bz2
[svn-r22737] Fix for HDF5 HDFFV-8109 H5S_UNLIMITED_F has a wrong type
Tested: jam (gnu)
-rw-r--r--fortran/src/H5_f.c69
-rw-r--r--fortran/src/H5_ff.f903
-rw-r--r--fortran/src/H5f90global.f9050
-rw-r--r--fortran/src/H5f90proto.h2
4 files changed, 67 insertions, 57 deletions
diff --git a/fortran/src/H5_f.c b/fortran/src/H5_f.c
index 05b7da0..7b55384 100644
--- a/fortran/src/H5_f.c
+++ b/fortran/src/H5_f.c
@@ -330,20 +330,21 @@ nh5close_types_c( hid_t_f * types, int_f *lentypes,
* PURPOSE
* Initialize Fortran flags
* INPUTS
- * h5d_flags - H5D inteface flags
- * h5e_flags - H5E inteface flags
- * h5e_hid_flags - H5E inteface flags of type hid_t
- * h5f_flags - H5F interface flags
- * h5fd_flags - H5FD interface flags
- * h5fd_hid_flags - H5FD interface flags of type hid_t
- * h5g_flags - H5G interface flags
- * h5i_flags - H5I interface flags
- * h5p_flags - H5P interface flags
- * h5p_flags_int - H5P interface flags of type integer
- * h5r_flags - H5R interface flags
- * h5s_flags - H5S interface flags
- * h5t_flags - H5T interface flags
- * h5z_flags - H5Z interface flags
+ * h5d_flags - H5D inteface flags
+ * h5e_flags - H5E inteface flags
+ * h5e_hid_flags - H5E inteface flags of type hid_t
+ * h5f_flags - H5F interface flags
+ * h5fd_flags - H5FD interface flags
+ * h5fd_hid_flags - H5FD interface flags of type hid_t
+ * h5g_flags - H5G interface flags
+ * h5i_flags - H5I interface flags
+ * h5p_flags - H5P interface flags
+ * h5p_flags_int - H5P interface flags of type integer
+ * h5r_flags - H5R interface flags
+ * h5s_flags - H5S interface flags
+ * h5s_hsize_flags - H5S interface flags of type hsize_t
+ * h5t_flags - H5T interface flags
+ * h5z_flags - H5Z interface flags
* OUTPUTS
* None
* RETURNS
@@ -368,7 +369,7 @@ nh5init_flags_c( int_f *h5d_flags, int_f *h5e_flags, hid_t_f *h5e_hid_flags, int
int_f *h5fd_flags, hid_t_f *h5fd_hid_flags,
int_f *h5g_flags, int_f *h5i_flags, int_f *h5l_flags, int_f *h5o_flags,
hid_t_f *h5p_flags, int_f *h5p_flags_int, int_f *h5r_flags, int_f *h5s_flags,
- int_f *h5t_flags, int_f *h5z_flags, int_f *h5_generic_flags)
+ hsize_t_f *h5s_hsize_flags, int_f *h5t_flags, int_f *h5z_flags, int_f *h5_generic_flags)
/******/
{
int ret_value = -1;
@@ -579,31 +580,29 @@ nh5init_flags_c( int_f *h5d_flags, int_f *h5e_flags, hid_t_f *h5e_hid_flags, int
/*
* H5S flags
*/
-
-
h5s_flags[0] = (int_f)H5S_SCALAR;
h5s_flags[1] = (int_f)H5S_SIMPLE;
h5s_flags[2] = (int_f)H5S_NULL;
h5s_flags[3] = (int_f)H5S_SELECT_SET;
h5s_flags[4] = (int_f)H5S_SELECT_OR;
- h5s_flags[5] = (int_f)H5S_UNLIMITED;
- h5s_flags[6] = (int_f)H5S_ALL;
-
- h5s_flags[7] = (int_f)H5S_SELECT_NOOP;
- h5s_flags[8] = (int_f)H5S_SELECT_AND;
- h5s_flags[9] = (int_f)H5S_SELECT_XOR;
- h5s_flags[10] = (int_f)H5S_SELECT_NOTB;
- h5s_flags[11] = (int_f)H5S_SELECT_NOTA;
- h5s_flags[12] = (int_f)H5S_SELECT_APPEND;
- h5s_flags[13] = (int_f)H5S_SELECT_PREPEND;
- h5s_flags[14] = (int_f)H5S_SELECT_INVALID;
-
-
- h5s_flags[15] = (int_f)H5S_SEL_ERROR;
- h5s_flags[16] = (int_f)H5S_SEL_NONE;
- h5s_flags[17] = (int_f)H5S_SEL_POINTS;
- h5s_flags[18] = (int_f)H5S_SEL_HYPERSLABS;
- h5s_flags[19] = (int_f)H5S_SEL_ALL;
+ h5s_flags[5] = (int_f)H5S_ALL;
+
+ h5s_flags[6] = (int_f)H5S_SELECT_NOOP;
+ h5s_flags[7] = (int_f)H5S_SELECT_AND;
+ h5s_flags[8] = (int_f)H5S_SELECT_XOR;
+ h5s_flags[9] = (int_f)H5S_SELECT_NOTB;
+ h5s_flags[10] = (int_f)H5S_SELECT_NOTA;
+ h5s_flags[11] = (int_f)H5S_SELECT_APPEND;
+ h5s_flags[12] = (int_f)H5S_SELECT_PREPEND;
+ h5s_flags[13] = (int_f)H5S_SELECT_INVALID;
+
+ h5s_flags[14] = (int_f)H5S_SEL_ERROR;
+ h5s_flags[15] = (int_f)H5S_SEL_NONE;
+ h5s_flags[16] = (int_f)H5S_SEL_POINTS;
+ h5s_flags[17] = (int_f)H5S_SEL_HYPERSLABS;
+ h5s_flags[18] = (int_f)H5S_SEL_ALL;
+
+ h5s_hsize_flags[0] = (hsize_t_f)H5S_UNLIMITED;
/*
* H5T flags
diff --git a/fortran/src/H5_ff.f90 b/fortran/src/H5_ff.f90
index dcd1917..c51b039 100644
--- a/fortran/src/H5_ff.f90
+++ b/fortran/src/H5_ff.f90
@@ -100,6 +100,7 @@ CONTAINS
i_H5P_flags_int, &
i_H5R_flags, &
i_H5S_flags, &
+ i_H5S_hsize_flags, &
i_H5T_flags, &
i_H5Z_flags, &
i_H5generic_flags)
@@ -118,6 +119,7 @@ CONTAINS
INTEGER i_H5P_flags_int(H5P_FLAGS_INT_LEN)
INTEGER i_H5R_flags(H5R_FLAGS_LEN)
INTEGER i_H5S_flags(H5S_FLAGS_LEN)
+ INTEGER(HSIZE_T) i_H5S_hsize_flags(H5S_HSIZE_FLAGS_LEN)
INTEGER i_H5T_flags(H5T_FLAGS_LEN)
INTEGER i_H5Z_flags(H5Z_FLAGS_LEN)
INTEGER i_H5generic_flags(H5generic_FLAGS_LEN)
@@ -150,6 +152,7 @@ CONTAINS
H5P_flags_int, &
H5R_flags, &
H5S_flags, &
+ H5S_hsize_flags, &
H5T_flags, &
H5Z_flags, &
H5generic_flags)
diff --git a/fortran/src/H5f90global.f90 b/fortran/src/H5f90global.f90
index a23ec34..6943270 100644
--- a/fortran/src/H5f90global.f90
+++ b/fortran/src/H5f90global.f90
@@ -690,7 +690,7 @@ MODULE H5GLOBAL
!
! H5S flags declaration
!
- INTEGER, PARAMETER :: H5S_FLAGS_LEN = 20
+ INTEGER, PARAMETER :: H5S_FLAGS_LEN = 19
INTEGER H5S_flags(H5S_FLAGS_LEN)
!DEC$if defined(BUILD_HDF5_DLL)
!DEC$ATTRIBUTES DLLEXPORT :: /H5S_FLAGS/
@@ -701,7 +701,6 @@ MODULE H5GLOBAL
INTEGER :: H5S_SIMPLE_F
INTEGER :: H5S_NULL_F
- INTEGER :: H5S_UNLIMITED_F
INTEGER :: H5S_ALL_F
INTEGER :: H5S_SELECT_NOOP_F
@@ -715,7 +714,6 @@ MODULE H5GLOBAL
INTEGER :: H5S_SELECT_PREPEND_F
INTEGER :: H5S_SELECT_INVALID_F
-
INTEGER :: H5S_SEL_ERROR_F
INTEGER :: H5S_SEL_NONE_F
INTEGER :: H5S_SEL_POINTS_F
@@ -727,24 +725,34 @@ MODULE H5GLOBAL
EQUIVALENCE(H5S_flags(3), H5S_NULL_F)
EQUIVALENCE(H5S_flags(4), H5S_SELECT_SET_F)
EQUIVALENCE(H5S_flags(5), H5S_SELECT_OR_F)
- EQUIVALENCE(H5S_flags(6), H5S_UNLIMITED_F)
- EQUIVALENCE(H5S_flags(7), H5S_ALL_F)
-
- EQUIVALENCE(H5S_flags(8), H5S_SELECT_NOOP_F)
- EQUIVALENCE(H5S_flags(9), H5S_SELECT_AND_F)
- EQUIVALENCE(H5S_flags(10), H5S_SELECT_XOR_F)
- EQUIVALENCE(H5S_flags(11), H5S_SELECT_NOTB_F)
- EQUIVALENCE(H5S_flags(12), H5S_SELECT_NOTA_F)
- EQUIVALENCE(H5S_flags(13), H5S_SELECT_APPEND_F)
- EQUIVALENCE(H5S_flags(14), H5S_SELECT_PREPEND_F)
- EQUIVALENCE(H5S_flags(15), H5S_SELECT_INVALID_F)
-
-
- EQUIVALENCE(H5S_flags(16), H5S_SEL_ERROR_F)
- EQUIVALENCE(H5S_flags(17), H5S_SEL_NONE_F)
- EQUIVALENCE(H5S_flags(18), H5S_SEL_POINTS_F)
- EQUIVALENCE(H5S_flags(19), H5S_SEL_HYPERSLABS_F)
- EQUIVALENCE(H5S_flags(20), H5S_SEL_ALL_F)
+ EQUIVALENCE(H5S_flags(6), H5S_ALL_F)
+
+ EQUIVALENCE(H5S_flags(7), H5S_SELECT_NOOP_F)
+ EQUIVALENCE(H5S_flags(8), H5S_SELECT_AND_F)
+ EQUIVALENCE(H5S_flags(9), H5S_SELECT_XOR_F)
+ EQUIVALENCE(H5S_flags(10), H5S_SELECT_NOTB_F)
+ EQUIVALENCE(H5S_flags(11), H5S_SELECT_NOTA_F)
+ EQUIVALENCE(H5S_flags(12), H5S_SELECT_APPEND_F)
+ EQUIVALENCE(H5S_flags(13), H5S_SELECT_PREPEND_F)
+ EQUIVALENCE(H5S_flags(14), H5S_SELECT_INVALID_F)
+
+
+ EQUIVALENCE(H5S_flags(15), H5S_SEL_ERROR_F)
+ EQUIVALENCE(H5S_flags(16), H5S_SEL_NONE_F)
+ EQUIVALENCE(H5S_flags(17), H5S_SEL_POINTS_F)
+ EQUIVALENCE(H5S_flags(18), H5S_SEL_HYPERSLABS_F)
+ EQUIVALENCE(H5S_flags(19), H5S_SEL_ALL_F)
+
+ INTEGER, PARAMETER :: H5S_HSIZE_FLAGS_LEN = 1
+ INTEGER(HSIZE_T) H5S_hsize_flags(H5S_HSIZE_FLAGS_LEN)
+ !DEC$if defined(BUILD_HDF5_DLL) DEC$ATTRIBUTES DLLEXPORT :: /H5S_HSIZE_FLAGS/
+ !DEC$endif
+ COMMON /H5S_HSIZE_FLAGS/ H5S_hsize_flags
+
+ INTEGER(HSIZE_T) :: H5S_UNLIMITED_F
+
+ EQUIVALENCE(H5S_hsize_flags(1), H5S_UNLIMITED_F)
+
!
! H5T flags declaration
!
diff --git a/fortran/src/H5f90proto.h b/fortran/src/H5f90proto.h
index a504653..d0a8361 100644
--- a/fortran/src/H5f90proto.h
+++ b/fortran/src/H5f90proto.h
@@ -1235,7 +1235,7 @@ H5_FCDLL int_f nh5init_flags_c(int_f *h5d_flags, int_f *h5e_flags, hid_t_f *h5e_
int_f *h5fd_flags, hid_t_f *h5fd_hid_flags,
int_f *h5g_flags, int_f *h5i_flags, int_f *h5l_flags, int_f *h5o_flags,
hid_t_f *h5p_flags, int_f *h5p_flags_int, int_f *h5r_flags, int_f *h5s_flags,
- int_f *h5t_flags, int_f *h5z_flags, int_f *h5_generic_flags);
+ hsize_t_f *h5s_hsize_flags, int_f *h5t_flags, int_f *h5z_flags, int_f *h5_generic_flags);
H5_FCDLL int_f nh5init1_flags_c(int_f *h5lib_flags);
H5_FCDLL int_f nh5get_libversion_c(int_f *majnum, int_f *minnum, int_f *relnum);
H5_FCDLL int_f nh5check_version_c(int_f *majnum, int_f *minnum, int_f *relnum);