On Thu, Mar 22, 2012 at 6:20 PM, Schwab,Wilhelm K <bschwab@anest.ufl.edu> wrote:
Eliot,

I am calling something that I *think* simply tells GSL where to find the callbacks and a relevant structure.� But I am getting a primitive failure in VMCallbackContext32>>primReturnAs:fromContext:, which I assume means that the library is attempting to call into Pharo.

In the debugger's context, ec is set to #'bad number of arguments'.� I have looked at the signatures and the blocks, and the argument counts look correct at first glance, albeit toward the end of a long day.

Am I being naive?�

Understandably so. �I believe the issue is the callback selector in place in recreateSpecialObjectsArray. �It needs to be

newArray at: 54 put: #invokeCallbackContext:.

not the older

newArray at: 54 put: #invokeCallback:stack:registers:jmpbuf:.

And you need to have�invokeCallbackContext: implemented in Alien class.

HTH

Any better ideas?� My next inclination is to set breakpoints in all of the callbacks to seee if any of them get hit.� I can't see why they would, but it's possible - especially given other weirdness that I have observed in GSL.� It work, but it's a little rough around the (design/elegance) edges at times.

Bill




--
best,
Eliot