Stripped-down code shown below is generating "access violation" run-time error when ReadAttribute subroutine is called. The error occurs when the program is compiled with IVF 17.0 but not with IVF 16.0. Maybe a bug in the compiler?
Thanks!
MODULE HDF5_CLASS IMPLICIT NONE TYPE :: HDF5FileType CONTAINS PROCEDURE,PASS :: New => New_HDF5File PROCEDURE,PASS :: ReadAttribute GENERIC :: ReadData => ReadAttribute END TYPE HDF5FileType CONTAINS SUBROUTINE New_HDF5File(ThisFile,FileName,lInputFile,AccessType,Status) CLASS(HDF5FileType) :: ThisFile CHARACTER(LEN=*),INTENT(IN) :: FileName LOGICAL,INTENT(IN) :: lInputFile CHARACTER(LEN=*),OPTIONAL,INTENT(IN) :: AccessType INTEGER,OPTIONAL,INTENT(OUT) :: Status CHARACTER(LEN=11) :: cAttributesDir LOGICAL :: TrackTime cAttributesDir = '/Attributes' CALL ThisFile%ReadAttribute(cAttributesDir,'TimeStep%TrackTime',ScalarAttrData=TrackTime) END SUBROUTINE New_HDF5File SUBROUTINE ReadAttribute(ThisFile,cGrpOrDset,cAttrName,ScalarAttrData,ArrayAttrData) CLASS(HDF5FileType),INTENT(IN) :: ThisFile CHARACTER(LEN=*),INTENT(IN) :: cGrpOrDset,cAttrName CLASS(*),OPTIONAL,INTENT(OUT) :: ScalarAttrData,ArrayAttrData(:) END SUBROUTINE ReadAttribute END MODULE HDF5_CLASS PROGRAM Test USE HDF5_CLASS IMPLICIT NONE TYPE(HDF5FileType) :: ThisFile CALL ThisFile%New('SomeFileName',.TRUE.) END