summaryrefslogtreecommitdiffstats
path: root/fortran
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2008-05-09 21:38:52 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2008-05-09 21:38:52 (GMT)
commit8d4ae7e283344449ade846bd30f35f424d5ad9ee (patch)
tree9f35644fc059fe48eea9828c9ca93b249a21e075 /fortran
parent9d8bed8483bfc8a8fe645166df2a029554889f63 (diff)
downloadhdf5-8d4ae7e283344449ade846bd30f35f424d5ad9ee.zip
hdf5-8d4ae7e283344449ade846bd30f35f424d5ad9ee.tar.gz
hdf5-8d4ae7e283344449ade846bd30f35f424d5ad9ee.tar.bz2
[svn-r14964] merged the fortran trunk into the branch, used the command:
(svn merge -r 14942:14963 http://svn.hdfgroup.uiuc.edu/hdf5/trunk/fortran)
Diffstat (limited to 'fortran')
-rw-r--r--fortran/src/H5Lff.f901
-rw-r--r--fortran/src/H5Pff.f9037
-rw-r--r--fortran/test/Makefile.am3
-rw-r--r--fortran/test/Makefile.in10
-rw-r--r--fortran/test/tH5A_1_8.f9050
5 files changed, 65 insertions, 36 deletions
diff --git a/fortran/src/H5Lff.f90 b/fortran/src/H5Lff.f90
index 9d1c2e5..1f7bceb 100644
--- a/fortran/src/H5Lff.f90
+++ b/fortran/src/H5Lff.f90
@@ -988,6 +988,7 @@ CONTAINS
! returns correct size
CHARACTER(LEN=*), INTENT(OUT) :: name ! Buffer in which link value is returned
INTEGER, INTENT(OUT) :: hdferr ! Error code:
+ ! 0 on success and -1 on failure
INTEGER(SIZE_T) :: group_namelen
INTEGER(HID_T), OPTIONAL, INTENT(IN) :: lapl_id ! Link access property list
diff --git a/fortran/src/H5Pff.f90 b/fortran/src/H5Pff.f90
index 2747add..8e5c420 100644
--- a/fortran/src/H5Pff.f90
+++ b/fortran/src/H5Pff.f90
@@ -6647,7 +6647,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE h5pget_attr_creation_order_f(ocpl_id, crt_order_flags, hdferr)
+ SUBROUTINE h5pget_attr_creation_order_f(ocpl_id, crt_order_flags, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -6769,7 +6769,7 @@
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
-!DEC$attributes dllexport :: h5pset_libver_bounds_f
+!DEC$attributes dllexport :: h5pset_link_creation_order_f
!DEC$endif
!
IMPLICIT NONE
@@ -7059,7 +7059,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE h5pget_link_creation_order_f(gcpl_id, crt_order_flags, hdferr)
+ SUBROUTINE h5pget_link_creation_order_f(gcpl_id, crt_order_flags, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -7116,7 +7116,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE h5pset_char_encoding_f(plist_id, encoding, hdferr)
+ SUBROUTINE h5pset_char_encoding_f(plist_id, encoding, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -7249,6 +7249,7 @@
! H5O_COPY_EXPAND_REFERENCE_F
! H5O_COPY_WITHOUT_ATTR_FLAG_F
INTEGER, INTENT(OUT) :: hdferr ! Error code
+ ! 0 on success and -1 on failure
! MS FORTRAN needs explicit interface for C functions called here.
!
@@ -7467,7 +7468,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE H5Pget_local_heap_size_hint_f(gcpl_id, size_hint, hdferr)
+ SUBROUTINE h5pget_local_heap_size_hint_f(gcpl_id, size_hint, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -7482,7 +7483,7 @@
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION H5Pget_local_heap_size_hint_c(gcpl_id, size_hint)
+ INTEGER FUNCTION h5pget_local_heap_size_hint_c(gcpl_id, size_hint)
USE H5GLOBAL
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!DEC$ ATTRIBUTES C,reference,decorate,alias:'H5PGET_LOCAL_HEAP_SIZE_HINT_C'::h5pget_local_heap_size_hint_c
@@ -7494,7 +7495,7 @@
hdferr = H5Pget_local_heap_size_hint_c(gcpl_id, size_hint)
- END SUBROUTINE H5Pget_local_heap_size_hint_f
+ END SUBROUTINE h5pget_local_heap_size_hint_f
!----------------------------------------------------------------------
! Name: H5Pget_est_link_info_f
@@ -7520,7 +7521,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE H5Pget_est_link_info_f(gcpl_id, est_num_entries, est_name_len, hdferr)
+ SUBROUTINE h5pget_est_link_info_f(gcpl_id, est_num_entries, est_name_len, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -7536,7 +7537,7 @@
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION H5Pget_est_link_info_c(gcpl_id, est_num_entries, est_name_len)
+ INTEGER FUNCTION h5pget_est_link_info_c(gcpl_id, est_num_entries, est_name_len)
USE H5GLOBAL
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!DEC$ ATTRIBUTES C,reference,decorate,alias:'H5PGET_EST_LINK_INFO_C'::h5pget_est_link_info_c
@@ -7544,12 +7545,12 @@
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER, INTENT(OUT) :: est_num_entries
INTEGER, INTENT(OUT) :: est_name_len
- END FUNCTION H5Pget_est_link_info_c
+ END FUNCTION h5pget_est_link_info_c
END INTERFACE
- hdferr = H5Pget_est_link_info_c(gcpl_id, est_num_entries, est_name_len)
+ hdferr = h5pget_est_link_info_c(gcpl_id, est_num_entries, est_name_len)
- END SUBROUTINE H5Pget_est_link_info_f
+ END SUBROUTINE h5pget_est_link_info_f
!----------------------------------------------------------------------
! Name: H5Pset_local_heap_size_hint_f
@@ -7574,7 +7575,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE H5Pset_local_heap_size_hint_f(gcpl_id, size_hint, hdferr)
+ SUBROUTINE h5pset_local_heap_size_hint_f(gcpl_id, size_hint, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -7589,19 +7590,19 @@
! MS FORTRAN needs explicit interface for C functions called here.
!
INTERFACE
- INTEGER FUNCTION H5Pset_local_heap_size_hint_c(gcpl_id, size_hint)
+ INTEGER FUNCTION h5pset_local_heap_size_hint_c(gcpl_id, size_hint)
USE H5GLOBAL
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!DEC$ ATTRIBUTES C,reference,decorate,alias:'H5PSET_LOCAL_HEAP_SIZE_HINT_C'::h5pset_local_heap_size_hint_c
!DEC$ ENDIF
INTEGER(HID_T), INTENT(IN) :: gcpl_id
INTEGER(SIZE_T), INTENT(IN) :: size_hint
- END FUNCTION H5Pset_local_heap_size_hint_c
+ END FUNCTION h5pset_local_heap_size_hint_c
END INTERFACE
hdferr = H5Pset_local_heap_size_hint_c(gcpl_id, size_hint)
- END SUBROUTINE H5Pset_local_heap_size_hint_f
+ END SUBROUTINE h5pset_local_heap_size_hint_f
!----------------------------------------------------------------------
! Name: H5Pset_est_link_info_f
@@ -7910,7 +7911,7 @@
! Comment:
!----------------------------------------------------------------------
- SUBROUTINE H5Pset_nbit_f(plist_id, hdferr)
+ SUBROUTINE h5pset_nbit_f(plist_id, hdferr)
!
!This definition is needed for Windows DLLs
!DEC$if defined(BUILD_HDF5_DLL)
@@ -7935,7 +7936,7 @@
hdferr = H5Pset_nbit_c(plist_id)
- END SUBROUTINE H5Pset_nbit_f
+ END SUBROUTINE h5pset_nbit_f
!----------------------------------------------------------------------
! Name: H5Pset_scaleoffset_f
diff --git a/fortran/test/Makefile.am b/fortran/test/Makefile.am
index 042cfab..24f9d61 100644
--- a/fortran/test/Makefile.am
+++ b/fortran/test/Makefile.am
@@ -51,8 +51,7 @@ fortranlib_test_SOURCES = fortranlib_test.f90 \
tH5Sselect.f90 tH5P.f90 tH5A.f90 tH5I.f90 tH5G.f90 tH5E.f90
fortranlib_test_1_8_SOURCES = fortranlib_test_1_8.f90 \
- tH5F.f90 tH5D.f90 tH5R.f90 tH5S.f90 tH5T.f90 tH5VL.f90 tH5Z.f90 \
- tH5Sselect.f90 tH5O.f90 tH5P.f90 tH5A_1_8.f90 tH5I.f90 tH5G_1_8.f90 tH5E.f90
+ tH5F.f90 tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90
fflush1_SOURCES=fflush1.f90
fflush2_SOURCES=fflush2.f90
diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in
index 2652472..ee9c13f 100644
--- a/fortran/test/Makefile.in
+++ b/fortran/test/Makefile.in
@@ -96,11 +96,8 @@ fortranlib_test_LINK = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(FCLD) $(fortranlib_test_FCFLAGS) $(FCFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
am_fortranlib_test_1_8_OBJECTS = fortranlib_test_1_8.$(OBJEXT) \
- tH5F.$(OBJEXT) tH5D.$(OBJEXT) tH5R.$(OBJEXT) tH5S.$(OBJEXT) \
- tH5T.$(OBJEXT) tH5VL.$(OBJEXT) tH5Z.$(OBJEXT) \
- tH5Sselect.$(OBJEXT) tH5O.$(OBJEXT) tH5P.$(OBJEXT) \
- tH5A_1_8.$(OBJEXT) tH5I.$(OBJEXT) tH5G_1_8.$(OBJEXT) \
- tH5E.$(OBJEXT)
+ tH5F.$(OBJEXT) tH5O.$(OBJEXT) tH5A_1_8.$(OBJEXT) \
+ tH5G_1_8.$(OBJEXT)
fortranlib_test_1_8_OBJECTS = $(am_fortranlib_test_1_8_OBJECTS)
fortranlib_test_1_8_LDADD = $(LDADD)
fortranlib_test_1_8_DEPENDENCIES = libh5test_fortran.la $(LIBH5TEST) \
@@ -394,8 +391,7 @@ fortranlib_test_SOURCES = fortranlib_test.f90 \
tH5Sselect.f90 tH5P.f90 tH5A.f90 tH5I.f90 tH5G.f90 tH5E.f90
fortranlib_test_1_8_SOURCES = fortranlib_test_1_8.f90 \
- tH5F.f90 tH5D.f90 tH5R.f90 tH5S.f90 tH5T.f90 tH5VL.f90 tH5Z.f90 \
- tH5Sselect.f90 tH5O.f90 tH5P.f90 tH5A_1_8.f90 tH5I.f90 tH5G_1_8.f90 tH5E.f90
+ tH5F.f90 tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90
fflush1_SOURCES = fflush1.f90
fflush2_SOURCES = fflush2.f90
diff --git a/fortran/test/tH5A_1_8.f90 b/fortran/test/tH5A_1_8.f90
index bdf4c41..040d4ed 100644
--- a/fortran/test/tH5A_1_8.f90
+++ b/fortran/test/tH5A_1_8.f90
@@ -992,18 +992,33 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
! /* Check for query on non-existant attribute */
n = 0
-!EP CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, 0_HSIZE_T, &
+
+ ! -- CHECK PASSING AN INTEGER CONSTANT IN DIFFERENT FORMS --
+
+ ! 1) call by passing an integer with the _hsize_t declaration
+
+ CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, 0_hsize_t, &
+ f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
+ CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
+
+ ! 2) call by passing an integer with the INT(,hsize_t) declaration
+
+ CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(0,hsize_t), &
+ f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
+ CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
+
+
+ ! 3) call by passing a variable with the attribute hsize_t
+
CALL h5aget_info_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, hzero, &
f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
-!EP pause 1
size = 0
CALL h5aget_name_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
!EP 0_HSIZE_T, tmpname, size, error, lapl_id=H5P_DEFAULT_F)
hzero, tmpname, size, error, lapl_id=H5P_DEFAULT_F)
CALL VERIFY("h5aget_name_by_idx_f",error,minusone,total_error)
-!EP pause 2
! /* Create attributes, up to limit of compact form */
@@ -1032,11 +1047,9 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
! /* Verify information for new attribute */
-!EP CALL attr_info_by_idx_check(my_dataset, attrname, INT(j,HSIZE_T), use_index(i), total_error )
+!EP CALL attr_info_by_idx_check(my_dataset, attrname, INT(j,HSIZE_T), use_index(i), total_error )
htmp = j
CALL attr_info_by_idx_check(my_dataset, attrname, htmp, use_index(i), total_error )
-!EP pause 3
-!EP CALL check("attr_info_by_idx_check",error,total_error)
!CHECK(ret, FAIL, "attr_info_by_idx_check");
ENDDO
@@ -1243,10 +1256,30 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
! CALL HDmemset(ainfo, 0, SIZEOF(ainfo)
!EP CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, 0_HSIZE_T, &
+
+ ! -- CHECK PASSING AN INTEGER CONSTANT IN DIFFERENT FORMS --
+
+ ! 1) call by passing an integer with the _hsize_t declaration
+
+ CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, 0_HSIZE_T, &
+ f_corder_valid, corder, cset, data_size, error)
+ CALL check("h5aget_info_by_idx_f",error,total_error)
+ CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+
+ ! 2) call by passing an integer with the INT(,hsize_t) declaration
+
+ CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, INT(0,HSIZE_T), &
+ f_corder_valid, corder, cset, data_size, error)
+ CALL check("h5aget_info_by_idx_f",error,total_error)
+ CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+
+ ! 3) call by passing a variable with the attribute hsize_t
+
CALL h5aget_info_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_DEC_F, hzero, &
f_corder_valid, corder, cset, data_size, error)
CALL check("h5aget_info_by_idx_f",error,total_error)
CALL VERIFY("h5aget_info_by_idx_f",corder,INT(n),total_error)
+
!!$ CALL HDmemset(tmpname, 0, (size_t))
!!$ ret = H5Aget_name_by_idx(obj_id, ".", H5_INDEX_CRT_ORDER, H5_ITER_DEC, (hsize_t)0, tmpname, (size_t)NAME_BUF_SIZE, H5P_DEFAULT)
!!$ CALL CHECK(ret, FAIL, "H5Aget_name_by_idx")
@@ -2965,9 +2998,8 @@ SUBROUTINE test_attr_dense_open( fcpl, fapl, total_error)
CALL check("h5aclose_f",error,total_error)
! /* Verify attributes written so far */
-!EP It looks like a bug we have with a dense storage
CALL test_attr_dense_verify(dataset, u, total_error)
-!!$ CHECK(ret, FAIL, "test_attr_dense_verify");
+ ! CHECK(ret, FAIL, "test_attr_dense_verify");
ENDDO
! /* Check on dataset's attribute storage status */
@@ -3054,7 +3086,7 @@ SUBROUTINE test_attr_dense_verify(loc_id, max_attr, total_error)
INTEGER :: value
data_dims = 0
-
+
! /* Retrieve the current # of reported errors */
! old_nerrs = GetTestNumErrs();