You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to compile my program in 64 bits. I use gfortran and the option default-real-8 to compile :
-fdefault-real-8 Set the default real type to an 8 byte wide type.
but got an error:
build\dependencies\stdlib\src\stdlib_specialfunctions_gamma.f90:1175:18:
1175 | res = l_gamma(n + 1, 1.0D0)
| 1
Error: There is no specific function for the generic 'l_gamma' at (1)
If I believe the error, the function containing this call is
impure elemental function l_factorial_iint64(n) result(res)
integer(int64), intent(in) :: n
[...]
res = l_gamma(n +1, 1.0D0)
end function
So n being int(8) and 1.0D0 being real(8), I think it should find this overload:
impure elemental function l_gamma_iint64dp(z, x) result(res)
integer(int64), intent(in) :: z
real(dp), intent(in) :: x
[...]
end function
But apparently not. Pretty new to Fortran and the kind stuff, I guess I am missing something!
Edit: I extract the code, and the error is more clear:
Type mismatch in argument 'x' at (1); passed REAL(16) to REAL(8)
So I guess default-real-8 is promoting 1.0D0 from REAL(8) to REAL(16)
Expected Behaviour
The stdlib should compile with a default real of size 8.
Description
I am trying to compile my program in 64 bits. I use gfortran and the option
default-real-8
to compile :-fdefault-real-8 Set the default real type to an 8 byte wide type.
but got an error:
If I believe the error, the function containing this call is
So
n
being int(8) and1.0D0
being real(8), I think it should find this overload:But apparently not. Pretty new to Fortran and the
kind
stuff, I guess I am missing something!Edit: I extract the code, and the error is more clear:
So I guess default-real-8 is promoting 1.0D0 from REAL(8) to REAL(16)
Expected Behaviour
The stdlib should compile with a default real of size 8.
Version of stdlib
ccdba91
Platform and Architecture
Windows
Additional Information
Also post a question on SO: https://stackoverflow.com/questions/79013476/compilation-failed-when-using-gfortran-flag-default-real-8-and-stdlib
The text was updated successfully, but these errors were encountered: