Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!
26733 Discussions

Seg fault for C_ FUNLOC for recursive function called from C

Michael_B_10
Beginner
94 Views

I'm getting a segmentation error for the following program with Intel 15-17 on linux, the program works with PGI, XL, GNU, Oracle and NAG.

https://support.hdfgroup.org/ftp/HDF5/examples/examples-by-api/hdf5-examples/1_8/FORTRAN/H5G/h5ex_g_...

I think there is a problem with setting the callback pointer function. Using gdb, it complains in the C code that the pointer to the function is
#0 0x00007fffffffbdf4 in ?? ()

In the C function that is called by fortran it does think that it is passed this address, op=0x7fffffffbdf4

#9 0x000000000040d16f in h5literate_by_name_c (loc_id=0x7fffffffbdd0, name=0x7fffffffbde8 "group1 ", <incomplete sequence \321>, namelen=0x7fffffffb9e0,
index_type=0x1077ca4 <h5generic_flags_+4>, order=0x1077cbc <h5generic_flags_+28>, idx=0x7fffffffbd88, op=0x7fffffffbdf4, op_data=0x7fffffffbcf0, lapl_id=0x7fffffffb9f0)
at hdf5/fortran/src/H5Lf.c:1063

but in fortran, the code calling h5literate_by_name_c, gdb does not give a pointer address:

#10 0x00000000004078c8 in h5l::h5literate_by_name_f (loc_id=144115188075855872, group_name='group1 ', index_type=0, order=2, idx=0, op=..., op_data=..., return_value=0,

op=... whatever that means.

both functions can be found in the HDF5 library,

https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5/browse/fortran/src/H5Lf.c

https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5/browse/fortran/src/H5Lff.F90

Thanks

 

0 Kudos
1 Reply
Xiaoping_D_Intel
Employee
94 Views

It is a known issue which is under fixing now. The bug track ID is DPD200417953.

 

Thanks,

Xiaoping Duan

Intel Customer Support

Reply