From 67d0c24a41ff2a98292f7c6c226cb6f5700d682e Mon Sep 17 00:00:00 2001 From: Scot Breitenfeld Date: Mon, 15 Dec 2008 12:46:54 -0500 Subject: [svn-r16196] Description: added: !DEC$ATTRIBUTES reference :: for character strings being passed in to C to fix bug in VMS. --- fortran/src/H5Aff.f90 | 13 ++++++++++--- fortran/src/H5Gff.f90 | 6 ++++-- fortran/src/H5Lff.f90 | 11 ++++++++++- fortran/src/H5Off.f90 | 2 ++ fortran/src/H5Pff.f90 | 2 ++ fortran/src/H5Rff.f90 | 2 ++ fortran/src/H5Tff.f90 | 2 ++ 7 files changed, 32 insertions(+), 6 deletions(-) diff --git a/fortran/src/H5Aff.f90 b/fortran/src/H5Aff.f90 index 891a39c..3fdd6fd 100644 --- a/fortran/src/H5Aff.f90 +++ b/fortran/src/H5Aff.f90 @@ -2052,7 +2052,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AGET_NAME_BY_IDX_C'::h5aget_name_by_idx_c !DEC$ ENDIF - + !DEC$ ATTRIBUTES reference :: obj_name, name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER, INTENT(IN) :: idx_type @@ -2370,7 +2370,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5ARENAME_BY_NAME_C'::h5arename_by_name_c !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: obj_name + !DEC$ATTRIBUTES reference :: obj_name, old_attr_name, new_attr_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T) :: obj_namelen @@ -2594,7 +2594,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5ADELETE_BY_NAME_C'::h5adelete_by_name_c !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: obj_name + !DEC$ATTRIBUTES reference :: obj_name, attr_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name CHARACTER(LEN=*), INTENT(IN) :: attr_name @@ -2677,6 +2677,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_BY_IDX_C'::h5aopen_by_idx_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: obj_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER, INTENT(IN) :: idx_type @@ -2836,6 +2837,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AGET_INFO_BY_IDX_C'::h5aget_info_by_idx_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: obj_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER, INTENT(IN) :: idx_type @@ -2921,6 +2923,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AGET_INFO_BY_NAME_C'::h5aget_info_by_name_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: obj_name, attr_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T), INTENT(IN) :: obj_namelen @@ -3011,6 +3014,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5ACREATE_BY_NAME_C'::h5acreate_by_name_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: obj_name, attr_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T), INTENT(IN) :: obj_namelen @@ -3082,6 +3086,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AEXISTS_C'::h5aexists_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: attr_name INTEGER(HID_T), INTENT(IN) :: obj_id CHARACTER(LEN=*), INTENT(IN) :: attr_name INTEGER(SIZE_T) :: attr_namelen @@ -3146,6 +3151,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AEXISTS_BY_NAME_C'::h5aexists_by_name_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: obj_name, attr_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T), INTENT(IN) :: obj_namelen @@ -3221,6 +3227,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5AOPEN_BY_NAME_C'::h5aopen_by_name_c !DEC$ ENDIF + !DEC$ ATTRIBUTES reference :: obj_name, attr_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(SIZE_T), INTENT(IN) :: obj_namelen diff --git a/fortran/src/H5Gff.f90 b/fortran/src/H5Gff.f90 index 5852e4a..d393a83 100644 --- a/fortran/src/H5Gff.f90 +++ b/fortran/src/H5Gff.f90 @@ -955,8 +955,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5GGET_COMMENT_C'::h5gget_comment_c !DEC$ ENDIF - !DEC$ATTRIBUTES reference :: name - !DEC$ATTRIBUTES reference :: buffer + !DEC$ATTRIBUTES reference :: name, buffer INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER :: namelen @@ -1216,6 +1215,8 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5GGET_INFO_BY_IDX_C'::h5gget_info_by_idx_c !DEC$ ENDIF + + !DEC$ATTRIBUTES reference :: group_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER, INTENT(IN) :: index_type @@ -1314,6 +1315,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5GGET_INFO_BY_NAME_C'::h5gget_info_by_name_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: group_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER(HID_T), INTENT(IN) :: lapl_id_default diff --git a/fortran/src/H5Lff.f90 b/fortran/src/H5Lff.f90 index 5d5433b..cad00b6 100644 --- a/fortran/src/H5Lff.f90 +++ b/fortran/src/H5Lff.f90 @@ -79,6 +79,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LCOPY_C'::h5lcopy_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: src_name, dest_name INTEGER(HID_T), INTENT(IN) :: src_loc_id CHARACTER(LEN=*), INTENT(IN) :: src_name INTEGER(HID_T), INTENT(IN) :: dest_loc_id @@ -147,6 +148,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LDELETE_C'::h5ldelete_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(HID_T) :: lapl_id_default @@ -214,6 +216,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LCREATE_SOFT_C'::h5lcreate_soft_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: target_path, link_name CHARACTER(LEN=*), INTENT(IN) :: target_path INTEGER(SIZE_T) :: target_path_len INTEGER(HID_T), INTENT(IN) :: link_loc_id @@ -295,6 +298,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LCREATE_HARD_C'::h5lcreate_hard_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: obj_name, link_name INTEGER(HID_T), INTENT(IN) :: obj_loc_id CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(HID_T), INTENT(IN) :: link_loc_id @@ -378,6 +382,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LCREATE_EXTERNAL_C'::h5lcreate_external_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: file_name, obj_name, link_name CHARACTER(LEN=*), INTENT(IN) :: file_name CHARACTER(LEN=*), INTENT(IN) :: obj_name INTEGER(HID_T), INTENT(IN) :: link_loc_id @@ -534,6 +539,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LEXISTS_C'::h5lexists_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(SIZE_T), INTENT(IN) :: namelen @@ -626,6 +632,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LGET_INFO_C'::h5lget_info_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: link_name INTEGER(HID_T), INTENT(IN) :: link_loc_id CHARACTER(LEN=*), INTENT(IN) :: link_name INTEGER, INTENT(OUT) :: cset @@ -719,6 +726,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LGET_INFO_BY_IDX_C'::h5lget_info_by_idx_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: group_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER(SIZE_T) :: group_namelen @@ -853,7 +861,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LMOVE_C'::h5lmove_c !DEC$ ENDIF - + !DEC$ATTRIBUTES reference :: src_name, dest_name INTEGER(HID_T), INTENT(IN) :: src_loc_id CHARACTER(LEN=*), INTENT(IN) :: src_name INTEGER(SIZE_T) :: src_namelen @@ -944,6 +952,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5LGET_NAME_BY_IDX_C'::h5lget_name_by_idx_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: group_name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: group_name INTEGER(SIZE_T) :: group_namelen diff --git a/fortran/src/H5Off.f90 b/fortran/src/H5Off.f90 index b79dbf2..ef58d47 100644 --- a/fortran/src/H5Off.f90 +++ b/fortran/src/H5Off.f90 @@ -69,6 +69,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5OLINK_C'::h5olink_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: new_link_name INTEGER(HID_T), INTENT(IN) :: object_id INTEGER(HID_T), INTENT(IN) :: new_loc_id CHARACTER(LEN=*), INTENT(IN) :: new_link_name @@ -134,6 +135,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5OOPEN_C'::h5oopen_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: loc_id CHARACTER(LEN=*), INTENT(IN) :: name INTEGER(HID_T) :: lapl_id_default diff --git a/fortran/src/H5Pff.f90 b/fortran/src/H5Pff.f90 index b0b9933..f8cc771 100644 --- a/fortran/src/H5Pff.f90 +++ b/fortran/src/H5Pff.f90 @@ -6338,6 +6338,7 @@ !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5PGET_DATA_TRANSFORM_C'::h5pget_data_transform_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: expression INTEGER(HID_T), INTENT(IN) :: plist_id CHARACTER(LEN=*), INTENT(OUT) :: expression INTEGER(SIZE_T) :: size_default @@ -6392,6 +6393,7 @@ !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5PSET_DATA_TRANSFORM_C'::h5pset_data_transform_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: expression INTEGER(HID_T), INTENT(IN) :: plist_id CHARACTER(LEN=*), INTENT(IN) :: expression INTEGER :: expression_len diff --git a/fortran/src/H5Rff.f90 b/fortran/src/H5Rff.f90 index de4f5f0..57843b7 100644 --- a/fortran/src/H5Rff.f90 +++ b/fortran/src/H5Rff.f90 @@ -489,6 +489,7 @@ !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5RGET_NAME_OBJECT_C':: h5rget_name_object_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: loc_id INTEGER(SIZE_T) :: size_default CHARACTER(LEN=*), INTENT(OUT) :: name @@ -554,6 +555,7 @@ !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5RGET_NAME_REGION_C':: h5rget_name_region_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: name INTEGER(HID_T), INTENT(IN) :: loc_id INTEGER(SIZE_T) :: size_default CHARACTER(LEN=*), INTENT(OUT) :: name diff --git a/fortran/src/H5Tff.f90 b/fortran/src/H5Tff.f90 index 162ea4f..4849f0e 100644 --- a/fortran/src/H5Tff.f90 +++ b/fortran/src/H5Tff.f90 @@ -3132,6 +3132,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5TDECODE_C'::h5tdecode_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: buf CHARACTER(LEN=*), INTENT(IN) :: buf INTEGER(HID_T), INTENT(OUT) :: obj_id ! Object ID END FUNCTION h5tdecode_c @@ -3180,6 +3181,7 @@ CONTAINS !DEC$ IF DEFINED(HDF5F90_WINDOWS) !DEC$ ATTRIBUTES C,reference,decorate,alias:'H5TENCODE_C'::h5tencode_c !DEC$ ENDIF + !DEC$ATTRIBUTES reference :: buf INTEGER(HID_T), INTENT(IN) :: obj_id CHARACTER(LEN=*), INTENT(OUT) :: buf INTEGER(SIZE_T), INTENT(INOUT) :: nalloc -- cgit v0.12