site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com User-agent: KMail/1.8 On Wednesday 08 June 2005 06:23 pm, you wrote:
Leon Bottou wrote: | In Tiger, NSInstallLinkEditErrorHandlers() does not work anymore. | CONCLUSION: | When running on Tiger, | the undefined handler was not called.
File a bug at <http://bugreporter.apple.com> I did that already. But I do not expect an answer (from past experience)
For a workaround, use the NSLINKMODULE_OPTION_RETURN_ON_ERROR option. This does not work when modules have cross dependencies. Suppose
foo.c ------------- extern int bar(int); int foo(int x) { if (x < 1) return 1 ; else return x + bar(x-1); } bar.c ------------- extern int foo(int); int bar(int x) { if (x < 1) return 1 ; else return x + foo(x-1); } Loading either foo or bar with NSLINKMODULE_OPTION_RETURN_ON_ERROR will cause an undefined symbol error, undo the load, and return the error code. There is no suitable load order.... The problem is that I do not have the choice of restructuring the code I am loading. This is used in Lush <lush.sourceforge.net> to load foreign code into the lisp core.... The best I can do with NSLINKMODULE_OPTION_RETURN_ON_ERROR is damage control: make it work most of the time... Thanks for the suggestion anyway. - L. _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... This email sent to site_archiver@lists.apple.com