diff options
Diffstat (limited to 'gcc/fortran/trans-io.c')
-rw-r--r-- | gcc/fortran/trans-io.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c index 2c84349..c0559f3 100644 --- a/gcc/fortran/trans-io.c +++ b/gcc/fortran/trans-io.c @@ -1808,7 +1808,8 @@ build_dt (tree function, gfc_code * code) mask |= set_internal_unit (&block, &post_iu_block, var, dt->io_unit); set_parameter_const (&block, var, IOPARM_common_unit, - dt->io_unit->ts.kind == 1 ? 0 : -1); + dt->io_unit->ts.kind == 1 ? + GFC_INTERNAL_UNIT : GFC_INTERNAL_UNIT4); } } else @@ -1892,6 +1893,9 @@ build_dt (tree function, gfc_code * code) mask |= set_parameter_ref (&block, &post_end_block, var, IOPARM_dt_size, dt->size); + if (dt->udtio) + mask |= IOPARM_dt_dtio; + if (dt->namelist) { if (dt->format_expr || dt->format_label) |