[Bug fortran/22629] Would like to access "long double" equivalent type as real*16
kargl at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Thu Dec 15 20:34:00 GMT 2005
------- Comment #4 from kargl at gcc dot gnu dot org 2005-12-15 20:34 -------
(In reply to comment #3)
> I was not suggesting to introduce a new datatype for real*16, but that
> the same type that is used for long double in C is available as real*16
> in Fortran, if the option -m128bit-long-double is used.
C's long double type is mapped to REAL(kind=10) on ia32. You
can read the top of trans-type.c to see how kinds are determined
and perhaps learn why real*16 will never happen on ia32.
> This request is not outlandish --- there are other compilers that
> support IEEE's 10 byte type as real*16, introducing 6 bytes of padding.
The other compilers have more than 5 unpaid volunteers working
full time of said compilers.
> It is customary in FORTRAN 77 to name data types after the number of
> bytes that they use.
"Customary" is not a part of any version of Fortran standard. In
fact, REAL*n isn't in any version of the standard.
> While it is not necessary that GFortran follows this convention, it
> would simplify porting FORTRAN 77 applications to GFortran, and I
> would like to see that feature.
Porting code involves more than flipping a switch. Assuming
REAL*16 means REAL(KIND=10)+6 bytes of padding for all codes that
have a REAL*16 is just plain stupid. But, you have the source code
and patches to implement the feature are always welcomed. I, however,
think you've greatly under estimated the task.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22629
More information about the Gcc-bugs
mailing list