I have a Fortran code that my client give me many month ago, we have done C implementation (JNI) with declaration of Fortran as an extern method and then we can call fortran from C and now we can call C from JAVA.
It work very well (almost :)) in fact in 1 of 8 library, sometime we have a segfault with
Stack: [0x00007f1ea63fc000,0x00007f1ea6afd000], sp=0x00007f1ea6af8f30, free space=7155k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libCMordor.so+0x5240] long double restrict+0xcac
C [libCMordor.so+0x1f84] unsigned long+0xbc8
I don't know what can cause a long double restrict
?
value of a result is bigger than a long double? or something else?
if someone can help me to show me the good way to find my solution, i will appreciate.
thaks a lot.
PS: i don't want to know if my code is ok or not because all work fine from many month, so i don't post code here, but i just want to know potential cause of long double restrict problem ;)
EDIT1
Finally i find my solution i guess.
I have put log into fortran and for a reason i don't understand now, because code is not from me and i don't know anything about fortran, i have a value that was 1 in many time and sometime this value is 1078334587, so i will re-send the code to the client and the man who wrote this code can correct this.
I think its a non initialized value that was get from fortran and the adress contain a big value in memory and cause sigsev!