This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/22629] Would like to access "long double" equivalent type as real*16
- From: "fxcoudert at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Jun 2006 16:46:30 -0000
- Subject: [Bug fortran/22629] Would like to access "long double" equivalent type as real*16
- References: <bug-22629-7427@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from fxcoudert at gcc dot gnu dot org 2006-06-21 16:46 -------
(In reply to comment #5)
> else if (mode == TYPE_MODE(float_long_double))
> kind = sizeof(long double);
sizeof(long double) is the size of a long double for the host, not on the
target.
> Sorry. With "outlandish" I did not mean to imply that someone should
> implement that; I would never request that. I meant whether the
> gfortran developers would accept such a patch, which I didn't want to
> prepare before I know whether there is a chance that it would be
> accepted.
To have the answer to that question, you'd need to ask on the mailing-list,
detailing the implications of such a change (pros and cons).
> I had somehow assumed that it would be only a matter of changing the
> kind numbers that are assigned to the real types that gfortran
> already supports. I assumed that a patch similar to the lines I
> suggest above would be sufficient. Is there something big that I
> overlooked?
I think the whole library interaction would change, requiring a multilib
libgfortran. Plus, you'd probably need good interaction with the target's libm.
> When I last looked at
> real*16, there were big problems with the I/O library in gfortran,
> and I also don't know whether these have been solved in the mean
> time. I think it just mapped long double to double, which would kind
> of defeat the purpose of using long double in the first place.
No, the library should be completely working. Although I'm not sure many people
use real(kind>8), so the testing may not be very wide.
--
fxcoudert at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |fxcoudert at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22629