[PATCH] fortran/15441,29312 -- Fix subnormal numbers, spacing, rrspacing.
Steve Kargl
sgk@troutmask.apl.washington.edu
Sat Oct 7 16:06:00 GMT 2006
On Sat, Oct 07, 2006 at 03:18:01PM +0200, FX Coudert wrote:
> :REVIEWMAIL:
>
> > * iresolve.c (gfc_resolve_rrspacing): Give rrspacing library
> > routine hidden precision argument.
>
> For both this one and the following function, you should use
> gfc_get_actual_arglist.
OK. I'll check this out, and make the change.
>
> > (gfc_resolve_spacing): Give rrspacing library routine hidden
> > precision, emin - 1, and tiny(x) arguments.
>
> Hard to read when emin - 1 is called "emin", and tiny(x) is called
> "wee". These variables should match the names they have in the
> library (and, of course: is emin really emin, or is it emin - 1?)
>
Yes, it is emin - 1. Fortran 95 says spacing=b**(e-p), which
can have problems with subnormal number. gfortran's inline
version happens to get right. Fortran 2003 changes this
to spacing b**(max(e-p,emin-1)). I'll change it to emin1.
> The patch looks otherwise OK. Please go ahead and commit, with the
> above comments.
It'll have to wait for the allocatable component patch, which I
testing and reading at the moment.
--
Steve
More information about the Gcc-patches
mailing list