This is the mail archive of the newlib@sourceware.org mailing list for the newlib 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] |
On Mar 16 16:35, Ralf Corsepius wrote:Pardon, typo on my part. I am talking about ESTRPIPECorinna Vinschen wrote:The error code is used at least in Linux and Solaris.It's not part of any POSIX or other standard I am aware about.
If there should be one, please point me to it.
I don't have much of a problem with Cygwin wanting to adopt other OS's proprietary extensions. But this is not what your patch is doing.If we generate our own Cygwin-specific error codes we will at one point have a errno list where the same error code is used for different purposes on different systems. I don't see that this gains anybody anything.
Your patch is infecting newlib with Cygwin's wish to generalize ESTRIPE. This is wrong. ESTRIPE is a non-standardized and OS-specific extension, and therefore should be treated as such (i.e. #ifdef'ed).
It's not ESTRIPE but ESTRPIPE.
Well, latent bugs, subject to fixing, I'd say.C.f. the patch below.
Newlib already defines the following errors not present in the POSIX standard:
EADV /* Advertise error */The ones you mention above are in the same bug-lane as ESTRPIPE is.
EBADE /* Invalid exchange */
EBADFD /* f.d. invalid for this operation */
EBADR /* Invalid request descriptor */
EBADRQC /* Invalid request code */
EBADSLT /* Invalid slot */
EBFONT /* Bad font file fmt */
ECHRNG /* Channel number out of range */
ECOMM /* Communication error on send */
EDEADLOCK /* File locking deadlock error */
EDOTDOT /* Cross mount point (not really error) */
EFTYPE /* Inappropriate file type or format */
EHOSTDOWN /* Host is down */
EL2HLT /* Level 2 halted */
EL2NSYNC /* Level 2 not synchronized */
EL3HLT /* Level 3 halted */
EL3RST /* Level 3 reset */
ELBIN /* Inode is remote (not really error) */
ELIBACC /* Can't access a needed shared lib */
ELIBBAD /* Accessing a corrupted shared lib */
ELIBEXEC /* Attempting to exec a shared library */
ELIBMAX /* Attempting to link in too many libs */
ELIBSCN /* .lib section in a.out corrupted */
ELNRNG /* Link number out of range */
ENMFILE /* No more files */
ENOANO /* No anode */
ENOCSI /* No CSI structure available */
ENONET /* Machine is not on the network */
ENOPKG /* Package not installed */
ENOTBLK /* Block device required */
ENOTUNIQ /* Given log. name not unique */
EPFNOSUPPORT /* Protocol family not supported */
EPROCLIM EREMCHG /* Remote address changed */
EREMOTE /* The object is remote */
ESHUTDOWN /* Can't send after socket shutdown */
ESOCKTNOSUPPORT /* Socket type not supported */
ESRMNT /* Srmount error */
ETOOMANYREFS EUNATCH /* Protocol driver not attached */
EUSERS EXFULL /* Exchange full */
And I even didn't mention the Cygwin-specific
ECASECLASH /* Filename exists with different case */ ENOMEDIUM /* No medium (in tape drive) */ ENOSHARE /* No such host or network path */
What's different with ESTRPIPE now?
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |