Feature gate: #![feature(io_error_input_output_error)]
This is a tracking issue for the InputOutputError variant of std::io::ErrorKind, returned for a low-level I/O error. It maps to EIO on Unix and to ERROR_IO_DEVICE on Windows.
Motivation and prior art (PTY EOF handling, storage/VM backends, buck2's own tag for this errno) are in the ACP, linked below.
Public API
// std::io
pub enum ErrorKind {
// ...
InputOutputError,
}
Steps / History
Unresolved Questions
- The variant name.
InputOutputError is what's implemented for now, following the ACP. It isn't settled: DeviceError was proposed, but EIO isn't limited to devices (cuviper). Naming only blocks stabilization, not this issue, so further suggestions are welcome here.
Feature gate:
#![feature(io_error_input_output_error)]This is a tracking issue for the
InputOutputErrorvariant ofstd::io::ErrorKind, returned for a low-level I/O error. It maps toEIOon Unix and toERROR_IO_DEVICEon Windows.Motivation and prior art (PTY EOF handling, storage/VM backends, buck2's own tag for this errno) are in the ACP, linked below.
Public API
Steps / History
io::ErrorKind::InputOutputError#159070Unresolved Questions
InputOutputErroris what's implemented for now, following the ACP. It isn't settled:DeviceErrorwas proposed, butEIOisn't limited to devices (cuviper). Naming only blocks stabilization, not this issue, so further suggestions are welcome here.Footnotes
https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html ↩