[#4479] Requesting addition to IRB (configurable standard output) — Sascha Ebach <se@...>

Hello,

13 messages 2005/02/24
[#4482] Re: Requesting addition to IRB (configurable standard output) — Sam Roberts <sroberts@...> 2005/02/25

Quoting se@digitale-wertschoepfung.de, on Fri, Feb 25, 2005 at 01:22:34AM +0900:

[#4483] Re: Requesting addition to IRB (configurable standard output) — Eric Hodel <drbrain@...7.net> 2005/02/25

On 24 Feb 2005, at 19:51, Sam Roberts wrote:

[#4488] Re: Requesting addition to IRB (configurable standard output) — Sam Roberts <sroberts@...> 2005/02/26

Quoting drbrain@segment7.net, on Sat, Feb 26, 2005 at 02:43:31AM +0900:

[#4489] Re: Requesting addition to IRB (configurable standard output) — Eric Hodel <drbrain@...7.net> 2005/02/26

On 25 Feb 2005, at 16:03, Sam Roberts wrote:

Re: Strange argc check in stable snapshot

From: "Berger, Daniel" <Daniel.Berger@...>
Date: 2005-02-23 19:53:29 UTC
List: ruby-core #4472

> -----Original Message-----
> From: Steven Jenkins [mailto:steven.jenkins@ieee.org] 
> Sent: Wednesday, February 23, 2005 11:14 AM
> To: ruby-core@ruby-lang.org
> Subject: Re: Strange argc check in stable snapshot
> 
> 
> Berger, Daniel wrote:
> >>-----Original Message-----
> >>From: Steven Jenkins [mailto:steven.jenkins@ieee.org]
> >>Maybe a good idea nonetheless. It might catch a bug 
> someday. Nothing 
> >>*guarantees* that argc is nonnegative, not even for main().
> > 
> > I'll pledge $100 to RubyCentral immediately if someone can actually 
> > demonstrate how this might occur.
> > 
> > And no, assigning a negative value to argc directly doesn't 
> count. :-P
> 
> int main(int argc, char *argv[])
> {
>      if (argc < 0)
>          return 0;
>      else
>          main(-1, 0);
> }
> 
> This is perfectly legal C. There's nothing special about 
> main() except 
> that the loader uses it as the entry point. Any other 
> function can call 
> it, including itself.
> 
> The argc in question is nonnegative by convention only. Someone could 
> just make a mistake and call it with the wrong argument.
> 
> Steve

Not exactly what I meant, but I'll donate $100 anyway.  I would consider
specifying argc manually a BUG.  At the very least, it's really crappy
code and not the sort of thing I would make an explicit check for.  I
would force a change in the offending caller's code.

Dan


In This Thread

Prev Next