Re: nil messaging? Is it safe?
Re: nil messaging? Is it safe?
- Subject: Re: nil messaging? Is it safe?
- From: Jonathan Wight <email@hidden>
- Date: Thu, 26 Sep 2002 18:19:13 -0500
On 09/26/2002 15:57, "Nicholas Riley" <email@hidden> wrote:
>
On Thu, Sep 26, 2002 at 09:39:21PM +0200, Gerben Wierda wrote:
>
> Now, I do not understand this. How can the compiler or the runtime
>
> system know what the message will return? After all, nil has no class,
>
> so there is no way of knowing the signature of the message (that is, the
>
> return value).
>
>
The compiler keeps track of all available selectors (for all known
>
classes); for a given selector there can be only one return type. If
>
the selector is unknown, I think you can only get an object/nil return
>
type, but I'm not sure.
>
>
> I was under the impression that any message sent to nil will just return
>
> nil and that's it. No harm done. But both statements above do suggest
>
> something else is going on. So: is it safe to send messages to nil? What
>
> does the runtime system exactly do with messages like that?
>
>
Nothing, just be careful if you use the return value and it's not an
>
object/pointer type.
Which reminds me - I find the fact that the runtime effectively ignores
messages to nil/NULL to be a source of many hard to trace errors. Is it
possible to set the runtime or perhaps GDB up so that it'll break if you
attempt to send a message to nil?
Jon.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.