+2019-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/91593
+ * io/io.h: Add gcc_unreachable().
+ * io/transfer.c (file_mode, current_mode,
+ formatted_transfer_scalar_read, formatted_transfer_scalar_write,
+ pre_position, next_record_r, next_record_w): Add and use
+ FORMATTED_UNSPECIFIED to enumeration.
+
2019-09-27 Maciej W. Rozycki <macro@wdc.com>
* configure: Regenerate.
typedef enum
{ FORMATTED_SEQUENTIAL, UNFORMATTED_SEQUENTIAL,
- FORMATTED_DIRECT, UNFORMATTED_DIRECT, FORMATTED_STREAM, UNFORMATTED_STREAM
+ FORMATTED_DIRECT, UNFORMATTED_DIRECT, FORMATTED_STREAM,
+ UNFORMATTED_STREAM, FORMATTED_UNSPECIFIED
}
file_mode;
{
file_mode m;
- m = FORM_UNSPECIFIED;
+ m = FORMATTED_UNSPECIFIED;
if (dtp->u.p.current_unit->flags.access == ACCESS_DIRECT)
{
case FMT_S:
consume_data_flag = 0;
- dtp->u.p.sign_status = SIGN_S;
+ dtp->u.p.sign_status = SIGN_PROCDEFINED;
break;
case FMT_SS:
consume_data_flag = 0;
- dtp->u.p.sign_status = SIGN_SS;
+ dtp->u.p.sign_status = SIGN_SUPPRESS;
break;
case FMT_SP:
consume_data_flag = 0;
- dtp->u.p.sign_status = SIGN_SP;
+ dtp->u.p.sign_status = SIGN_PLUS;
break;
case FMT_BN:
case FMT_S:
consume_data_flag = 0;
- dtp->u.p.sign_status = SIGN_S;
+ dtp->u.p.sign_status = SIGN_PROCDEFINED;
break;
case FMT_SS:
consume_data_flag = 0;
- dtp->u.p.sign_status = SIGN_SS;
+ dtp->u.p.sign_status = SIGN_SUPPRESS;
break;
case FMT_SP:
consume_data_flag = 0;
- dtp->u.p.sign_status = SIGN_SP;
+ dtp->u.p.sign_status = SIGN_PLUS;
break;
case FMT_BN:
case UNFORMATTED_DIRECT:
dtp->u.p.current_unit->bytes_left = dtp->u.p.current_unit->recl;
break;
+ case FORMATTED_UNSPECIFIED:
+ gcc_unreachable ();
}
dtp->u.p.current_unit->current_record = 1;
while (p != '\n');
}
break;
+ case FORMATTED_UNSPECIFIED:
+ gcc_unreachable ();
}
}
}
break;
+ case FORMATTED_UNSPECIFIED:
+ gcc_unreachable ();
io_error:
generate_error (&dtp->common, LIBERROR_OS, NULL);