On the other hand, if there are only three calls to objc_msgSend in only one file I could maybe just replace these three calls. But the objc_msg_lookup calls seems to be quite unusal.
With "quite unsual" I mean how can I pass the va_list since the objc_msg_lookup only takes two arguments.

o/
Thomas

Begin forwarded message:

From: Thomas Kupper <thomas.kup...@gmail.com>
Date: 13 April 2009 21:49:06 GMT+02:00
To: discuss-gnustep@gnu.org
Subject: Re: linking tool to use a framework : obj_send_msg error


There is probably some 'optimisation' in the framework calling the Apple runtime message send function directly (the quotes because anything doing I/O like this is likely to gain an imperceptible performance increase from calling the runtime functions directly rather than using -methodForSelector:). Try grepping the source code for objc_msgSend() and, in files that contain it, add this macro:

#define objc_msgSend(theReceiver, theSelector, ...) \
objc_msg_lookup(theReceiver, theSelector)(theReceiver, theSelector, ## __VA_LIST__)


Perfect! That's exactly what causes the error. In one file there are three calls to objc_msgSend. Now I tried to define the macro you mentioned. Unfortunately the # __VA_LIST__ part is not recognized and Google wasn't any help, and neither was a find ... -exec fgrep ....

On the other hand, if there are only three calls to objc_msgSend in only one file I could maybe just replace these three calls. But the objc_msg_lookup calls seems to be quite unusal.

Would you mind helping my again? I tried to compile it under Ubuntu 8.10/Debian 5.0.


Thanks for excellent help!
Thomas


_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to