------- Comment #7 from dominiq at lps dot ens dot fr 2007-07-31 20:32 -------
Subject: Re: Wrong code with with -fdefault-integer-8
This part of the problem for intrinsic_rrspacing.f90 now works, but there
is another one with rrspacing(x):
program test_rrspacing
real x
x = 3.0
x = rrspacing(x)
print *, x
end
gives 0.75 with -fdefault-integer-8 instead of 1.2582912E+07.
The dump-tree gives:
MAIN__ ()
{
real4 x;
static int4 options.0[7] = {68, 127, 0, 0, 0, 1, 0};
_gfortran_set_options (7, (void *) &options.0);
x = 3.0e+0;
x = _gfortran_rrspacing_r4 (x, 24);
{
struct __st_parameter_dt dt_parm.1;
dt_parm.1.common.filename = &"intrinsic_rrspacing_red_1.f90"[1]{lb: 1 sz:
1};
dt_parm.1.common.line = 7;
dt_parm.1.common.flags = 128;
dt_parm.1.common.unit = 6;
_gfortran_st_write (&dt_parm.1);
_gfortran_transfer_real (&dt_parm.1, &x, 4);
_gfortran_st_write_done (&dt_parm.1);
}
}
so I guess we are back to PR32770.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32942