[#4522] Undefined Errno::EPROTO and the like raises NameError — "Florian Frank" <flori@...>
Hi,
[#4533] giving acces readline to rl_line_buffer — "Cs. Henk" <csaba-ml@...>
Hi!
[#4548] Ruby 1.8.2 array of hash entries functions incorrectly — noreply@...
Bugs item #1613, was opened at 2005-03-09 19:49
[#4561] rb_reg_quote weirdness — Nikolai Weibull <mailing-lists.ruby-core@...>
(Two weirdnesses in one day.)
Hi,
[#4567] Immutable Ropes — Nikolai Weibull <mailing-lists.ruby-core@...>
Note how I didn't write "Immutable Strings" in the subject.
[#4575] Allowing "?" in struct members — "Berger, Daniel" <Daniel.Berger@...>
Hi all,
[#4587] 0**0==1? — Bertram Scharpf <lists@...>
Hi,
[#4595] New block syntax — Daniel Amelang <daniel.amelang@...>
I'm really sorry if this isn't the place to talk about this. I've
Daniel Amelang wrote:
Hi --
On Monday 21 March 2005 16:17, David A. Black wrote:
Hi --
Hey David, I think that we've had some misunderstandings due to
Hi --
On Wednesday 30 March 2005 20:55, David A. Black wrote:
On Sunday 20 March 2005 21:31, Daniel Amelang wrote:
[#4601] Re: New block syntax — "Berger, Daniel" <Daniel.Berger@...>
> -----Original Message-----
[#4611] want_object? - possible? — "Berger, Daniel" <Daniel.Berger@...>
Hi all,
[#4619] Re: want_object? - possible? — Daniel Berger <djberg96@...>
--- nobu.nokada@softhome.net wrote:
Hi --
On 3/24/05, David A. Black <dblack@wobblini.net> wrote:
Hi --
On 4/14/05, David A. Black <dblack@wobblini.net> wrote:
On 14 Apr 2005, at 22:20, Mark Hubbart wrote:
On 4/15/05, Eric Hodel <drbrain@segment7.net> wrote:
[#4622] tempfile.rb — Tilman Sauerbeck <tilman@...>
Hi,
[#4648] about REXML::Encoding — speakillof <speakillof@...>
Hi.
On Thursday 31 March 2005 09:44, speakillof wrote:
Hi.
I've tested, applied, and committed your Encoding patch, Nobu.
Hi,
Re: Undefined Errno::EPROTO and the like raises NameError
Quoting matz@ruby-lang.org, on Tue, Mar 08, 2005 at 10:03:16AM +0900:
> Hi,
>
> In message "Re: Undefined Errno::EPROTO and the like raises NameError"
> on Tue, 8 Mar 2005 01:17:37 +0900, "Florian Frank" <flori@nixe.ping.de> writes:
>
> |I just run into the problem, that certain System Call Errors aren't
> |defined depending on the platform. I tested on a platform, where
> |Errno::EPROTO is not defined. If I code something like
>
> Yeah, it's on my to-do list for a long time, but without any idea to
> solve. Errno exceptions vary platform to platform, so that simple
> scripts like you did cause NameError, but I don't want to allow
> reference to undefined constants in the rescue clause, since relaxing
> constant reference here changes the meaning of expression, and makes
> semantics more complex. Any idea?
I used to think like Florian, but now I think it is better the way it is
right now.
It seems like it makes it hard to be cross platform, but in a way it
makes it easier. If you have
rescue Errno:EPROTO
...
and expect it to do something, and then run it on a platform that uses a
different errno than EPROTO for the condition, your code will silently
"seem" to work, but actually it works wrongly. For example, I just
looked and there is no EPROTO I see for Mac OS X, so I don't know what
it means, it must be a different error number on OS X.
It is better for your code to fail, then you will look at the man page
and realize that on this platform you need to rescue a different errno.
Another example is setting socket option REUSEPORT. It doesn't exist on
all platforms, and on the ones it doesn't, you need to set a different
socket option. If socket.c defined SOREUSEPORT, crazy things would
happen, but not what you wanted!
I think error numbers shouldn't be different from the other OS-specific
constants, like those in socket.c.
Cheers,
Sam