On 17 Dec 2010, at 13:41, Christopher Armstrong wrote:

> Hi David
> 
> Okay, really, really stupid me didn't realise that replacing 
> sel_get_any_typed_uid() with sel_getUid() would not be a good idea to get rid 
> of the "method deprecated" warnings. Changing it back and suppressing the 
> deprecated-declarations warnings solved the problem: most unit tests except 
> some interpreted ones pass for me now.

Ah, that's good.  Which interpreter tests fail?  I've got all of the 
interpreter tests passing for FreeBSD, and that code is supposed to be more 
portable than the compiler...

> How can I fix this bit of code (TypesForMethodName() in LKModule.m) so that 
> it works with the new runtime and doesn't use a deprecated function?

You don't.  sel_get_any_typed_uid() is deprecaded in libobjc2 because it's a 
stupid function that should never have been added to GCC libobjc in the first 
place.  There are some new interfaces now that let you find ALL of the types 
for a specific selector.  I need to modify LK to emit code for calling each of 
the possible selectors in turn in (relatively rare) cases where we have 
polymorphic selectors.  This will eliminate all of the polymorphic selector 
warnings and make it all Just Work™, but it's a nontrivial change.

David
_______________________________________________
Etoile-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-discuss

Répondre à