This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch, fortran] PR35862 [F2003] Implement new rounding modes for run time


On 09/28/2009 02:34 PM, Tobias Burnus wrote:
Am 28.09.2009 06:29, schrieb Jerry DeLisle:
Regression tested on x86-64-linux-gnu.
OK for trunk?

The patch looks OK except of the last two lines in


@@ -2252,6 +2322,16 @@ data_transfer_init (st_parameter_dt *dtp, int read
    if (dtp->u.p.current_unit->decimal_status == DECIMAL_UNSPECIFIED)
      dtp->u.p.current_unit->decimal_status =
dtp->u.p.current_unit->flags.decimal;

+  /* Check the round mode.  */
+  dtp->u.p.current_unit->round_status
+    = !(cf&  IOPARM_DT_HAS_ROUND) ? ROUND_UNSPECIFIED :
+      find_option (&dtp->common, dtp->round, dtp->round_len,
+            round_opt, "Bad ROUND parameter in data transfer "
+            "statement");
+
+  if (dtp->u.p.current_unit->decimal_status == DECIMAL_UNSPECIFIED)
+    dtp->u.p.current_unit->decimal_status =
dtp->u.p.current_unit->flags.decimal;
+

I think that should be "->round_status" instead of "->decimal_status".

Yes, thanks for catching that. Classic copy/paste error.

I fixed and committed. The fix required initializing the modes in unit.c. Obviously. Regression tested again after fix before committing..

Thanks for review,

Jerry


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]