Mariano, You should be able to find the function information you need in $GEMSTONE/include/gci.hf... Dale On 3/31/16 6:27 AM, Mariano Martinez Peck wrote:
On Thu, Mar 31, 2016 at 12:44 AM, Esteban Lorenzano <estebanlm@gmail.com <mailto:estebanlm@gmail.com>> wrote:
how does your function call looks like?
The function call is:
^ self ffiCall: #( GsGciOopType GciExecuteStrFromContextDbg_(String source, int64 sourceSize, GsGciOopType sourceClassOopType, GsGciOopType contextObjectOopType, GsGciOopType symbolListOopType, int flags, ushort environmentId) )
And the C function SHOULD BE (I say SHOULD because I don't have access to the C source nor header):
EXTERN_GCI_DEC(OopType) GciExecuteStrFromContextDbg_( const char source[], int64 sourceSize, OopType sourceClass, OopType contextObject, OopType symbolList, int flags, ushort environmentId );
I am not sure which is the error because other times I did get an error that is was clear that it couldn't marshal the arguments. But that "bad arguments" doesn't tell me much :(
On 31 Mar 2016, at 04:55, Mariano Martinez Peck <marianopeck@gmail.com <mailto:marianopeck@gmail.com>> wrote:
Hi guys,
Could someone help me understand what could be the exact reason of a 'Bad argument for external function' in an FFI call? Of course, I double checked all the arguments definitions in the #ffiCall: and the real objects I receive as arguments at the moment of the callout. And they all seem correct.
And even better...how can I get more info about it?
Thanks in advance,
-- Mariano http://marianopeck.wordpress.com <http://marianopeck.wordpress.com/>
-- Mariano http://marianopeck.wordpress.com