ncruces wrote:
> On 3/31/06, Nicolas Cannasse <[EMAIL PROTECTED]> wrote:
>
>>Uhm that's problematic.
>>
>>The neko_check_stack function is checking that the stack is not changed
>>in functions, and that the functions does not access outside their
>>stacks (for security reasons). It's an important part of the bytecode
>>validation.
>>
>>Could you add printf's in neko_check_stack at the places where there is
>>"return 0" ?
>
>
> Did that. It breaks on line 180 (by the way, these line numbers are
> now the same as current CVS). And then I added more useful stuf to
> that specific printf. This is what I get:
> [EMAIL PROTECTED]: c=AccStack i=80106 m->code[i+1]=4294967296
> stack=5
> [EMAIL PROTECTED]
>
> From the way I did things (printfs on each and every "return 0;") I
> gather there are no recursive calls. That huge number, 4294967296, is
> 0x100000000 (a lone 32nd bit). I also checked to make sure "sizeof
> m->code[i+1]" (which is an int_val or intptr_t) is indeed 8 in this
> architecture.
Thanks that should be enough infos.
Could you replace
m->code[i++] = itmp;
By
m->code[i++] = itmp;
At line 372 ?
Tell me if that works.
Nicolas
--
Neko : One VM to run them all
(http://nekovm.org)