bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: error.c: "Unknown system error" should report errno value


From: Eric Blake-1
Subject: Re: error.c: "Unknown system error" should report errno value
Date: Tue, 25 Sep 2007 07:39:57 -0700 (PDT)

> The Austin group debated making the next version of POSIX required to
> always return a non-NULL result for strerror (although for out-of-range
> errors, there was no guarantee that the string had to be unique, as in
> printing what the out-of-range value was).  However, I think that proposal
> has stalled, so the Interix behavior of returning NULL for strerror(-1) is
> not yet non-POSIX compliant.

I take that back.  POSIX 2001 and C99 TC3 both state this:

| Typically, the values for errnum come from errno, but strerror() shall
| map any value of type int to a message.

See also:

http://www.opengroup.org/austin/interps/uploads/40/9947/AI-072.txt

where the next draft of POSIX is even more explicit that:

| Upon completion, whether successful or not, strerror( ) shall return
| a pointer to the generated message string.

>  I am very much in favor of a gnulib
> implementation of strerror that works harder to provide non-NULL results.

Sounds like we need to update the gnulib replacement for strerror to
accomodate broken platforms like Interix.

-- 
Eric Blake

-- 
View this message in context: 
http://www.nabble.com/Re%3A-error.c%3A-%22Unknown-system-error%22-should-report-errno-value-tf4513158.html#a12881056
Sent from the Gnulib mailing list archive at Nabble.com.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]