------- 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