<div dir="ltr">Aha.<div><br></div><div>How can I know based on the return value of some random Gambit C function like ___aloc_scmobj or ___U32_to_SCMOBJ that it guaranteedly will trig an exception when returning to the Scheme world, without me needing to take any futher action for that to happen - will that happen in <u>all</u> non-<span style="font-size:12.8px">___FIX(___NO_ERR) result cases?</span></div><div><span style="font-size:12.8px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-01-07 5:37 GMT+08:00 Marc Feeley <span dir="ltr"><<a href="mailto:feeley@iro.umontreal.ca" target="_blank">feeley@iro.umontreal.ca</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Actually, all c-lambdas that can generate an exception will check the variable ___err to see if there was an error.<br>
<br>
The implementation is the macro ___CFUN_CONV_ERROR in gambit.h .<br>
<span class="HOEnZb"><font color="#888888"><br>
Marc<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
> On Jan 6, 2016, at 4:32 PM, Adam <<a href="mailto:adam.mlmb@gmail.com">adam.mlmb@gmail.com</a>> wrote:<br>
><br>
> Aha interesting, so every c-lambda that returns a scheme-object, will check if ___result is set to an error.  Does that check trig on all errors, what's its definition.., is it implemented in any particular macro or alike?<br>
><br>
> Just for me as a user to be able to know exactly.<br>
<br>
</div></div></blockquote></div><br></div>