On Thu, Apr 02, 2009 at 11:31:43PM +0100, David Chisnall wrote: > The selector handling mechanism in GNU libobjc is horrible. Selectors > can lose type information depending on the order in which they are > registered. It is one of the things I plan on addressing this year.
What is really unfortunate is that at least in the case of handling forwarding, the libobjc callback just didn't provide enough information to look up the real (typed) selector so you just had to guess. All it gave you was the SEL which didn't always have type information (or at least the correct type information) associated with it. I added a __objc_msg_forward2 callback a while ago to libobjc that gives you the object you were attempting to send a message to AND the SEL. >From there you can just ask the object itself the method signature for forwarding (which is probably how it should be done in the first place, IMO -- I hate the typed selectors). Unfortunately, the hook is only available in newer libobjcs so older gcc's are still always going to be a pain. Cheers, Andy -- Andrew Ruder <[email protected]> http://www.aeruder.net _______________________________________________ Discuss-gnustep mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnustep
