From 791915e92a291704393cd2e740d658f4e46a8683 Mon Sep 17 00:00:00 2001 From: Scot Breitenfeld Date: Tue, 30 Jan 2024 11:05:20 -0600 Subject: Fixed XL and gfortran errors (#3968) * fixed XL and Gfortran errors * fixed data type len array --- fortran/src/H5Fff.F90 | 6 +++++- fortran/src/H5Sff.F90 | 8 ++++---- fortran/test/tH5Sselect.F90 | 8 ++++---- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/fortran/src/H5Fff.F90 b/fortran/src/H5Fff.F90 index fcfde86..e8b765b 100644 --- a/fortran/src/H5Fff.F90 +++ b/fortran/src/H5Fff.F90 @@ -1220,6 +1220,9 @@ CONTAINS INTEGER(HID_T), INTENT(IN) :: file_id INTEGER, INTENT(OUT) :: intent INTEGER, INTENT(OUT) :: hdferr + + INTEGER(C_INT) :: c_intent + INTERFACE INTEGER(C_INT) FUNCTION H5Fget_intent(file_id, intent) BIND(C,NAME='H5Fget_intent') IMPORT :: C_INT @@ -1230,7 +1233,8 @@ CONTAINS END FUNCTION H5Fget_intent END INTERFACE - hdferr = INT(H5Fget_intent(file_id, intent)) + hdferr = INT(H5Fget_intent(file_id, c_intent)) + intent = INT(c_intent) END SUBROUTINE h5fget_intent_f diff --git a/fortran/src/H5Sff.F90 b/fortran/src/H5Sff.F90 index e64956d..5f2f1d2 100644 --- a/fortran/src/H5Sff.F90 +++ b/fortran/src/H5Sff.F90 @@ -1533,10 +1533,10 @@ CONTAINS INTEGER(HID_T) , INTENT(IN) :: sel_iter_id INTEGER(SIZE_T), INTENT(IN) :: maxseq INTEGER(SIZE_T), INTENT(IN) :: maxbytes - INTEGER(SIZE_T), INTENT(OUT), TARGET :: nseq - INTEGER(SIZE_T), INTENT(OUT), TARGET :: nbytes + INTEGER(SIZE_T), INTENT(OUT) :: nseq + INTEGER(SIZE_T), INTENT(OUT) :: nbytes INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: off - INTEGER(HSIZE_T), DIMENSION(*), INTENT(OUT) :: len + INTEGER(SIZE_T), DIMENSION(*), INTENT(OUT) :: len INTEGER, INTENT(OUT) :: hdferr INTERFACE @@ -1550,7 +1550,7 @@ CONTAINS INTEGER(SIZE_T) :: nseq INTEGER(SIZE_T) :: nbytes INTEGER(HSIZE_T), DIMENSION(*) :: off - INTEGER(HSIZE_T), DIMENSION(*) :: len + INTEGER(SIZE_T), DIMENSION(*) :: len END FUNCTION H5Ssel_iter_get_seq_list END INTERFACE diff --git a/fortran/test/tH5Sselect.F90 b/fortran/test/tH5Sselect.F90 index f216b0e..bcf254a 100644 --- a/fortran/test/tH5Sselect.F90 +++ b/fortran/test/tH5Sselect.F90 @@ -405,7 +405,7 @@ CONTAINS CALL VERIFY("H5Ssel_iter_get_seq_list_f", nseq, 4_SIZE_T, total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", nbytes, 4_SIZE_T, total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", off(NUMP+1), INT(-99,HSIZE_T), total_error) - CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(NUMP+1), INT(-99,HSIZE_T), total_error) + CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(NUMP+1), INT(-99,SIZE_T), total_error) DO i = 1, NUMP CALL VERIFY("H5Ssel_iter_get_seq_list_f", off(i), INT((i-1)*26+12,HSIZE_T), total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(i), INT(1,SIZE_T), total_error) @@ -414,7 +414,7 @@ CONTAINS CALL VERIFY("H5Ssel_iter_get_seq_list_f", nseq, 4_SIZE_T, total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", nbytes, 16_SIZE_T, total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", off(NUMP+1), INT(-99,HSIZE_T), total_error) - CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(NUMP+1), INT(-99,HSIZE_T), total_error) + CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(NUMP+1), INT(-99,SIZE_T), total_error) DO i = 1, NUMP CALL VERIFY("H5Ssel_iter_get_seq_list_f", off(i), INT((i-1)*12,HSIZE_T), total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(i), INT(4,SIZE_T), total_error) @@ -423,9 +423,9 @@ CONTAINS CALL VERIFY("H5Ssel_iter_get_seq_list_f", nseq, 1_SIZE_T, total_error ) CALL VERIFY("H5Ssel_iter_get_seq_list_f", nbytes, 72_SIZE_T, total_error ) CALL VERIFY("H5Ssel_iter_get_seq_list_f", off(1), INT(0,HSIZE_T), total_error) - CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(1), INT(72,HSIZE_T), total_error) + CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(1), INT(72,SIZE_T), total_error) CALL VERIFY("H5Ssel_iter_get_seq_list_f", off(2), INT(-99,HSIZE_T), total_error) - CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(2), INT(-99,HSIZE_T), total_error) + CALL VERIFY("H5Ssel_iter_get_seq_list_f", ilen(2), INT(-99,SIZE_T), total_error) ELSE CALL check("Incorrect selection option", error, total_error) ENDIF -- cgit v0.12