View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0000546 | mercury | Feature Request | public | 2022-02-07 14:34 | 2022-02-07 16:56 | ||||||||
Reporter | wangp | ||||||||||||
Assigned To | |||||||||||||
Priority | normal | Severity | minor | Reproducibility | N/A | ||||||||
Status | new | Resolution | open | ||||||||||
Product Version | |||||||||||||
Target Version | Fixed in Version | ||||||||||||
Summary | 0000546: make io.system_error public | ||||||||||||
Description | As discussed on mercury-users (05 Feb 2022) we should give access to the system error code from an io.error value. Something like this: % implementation :- type io.error ---> io_error(system_error, string). :- func make_io_error(system_error, string) = io.error. :- pred get_system_error(io.error::in, system_error::out) is semidet. (Assign yourself if you want to work on it.) | ||||||||||||
Tags | No tags attached. | ||||||||||||
Attached Files |
|
Notes | |
juliensf (administrator) 2022-02-07 16:56 |
A complication here is that on Windows, there are two different sets of error codes: one for the system calls and another for the library functions that report their errors via errno. Currently we don't distinguish between the two, which means any potential user of a public system_error type won't know which is which. |