2008/8/2 Allison Randal via RT <[EMAIL PROTECTED]>

> On Tue Jul 22 06:10:41 2008, fperrad wrote:
> >
> > In fact 'docall' uses a pushaction.
>
> I modified 'docall' so it no longer uses pushaction, and all Lua tests
> are now passing.
>
>
Ok, tests pass, but the behavior has changed.
(The tests were written to check the exception message, not the full back
trace)
The pushaction allowed to retrieve the backtrace where the exception
occurred.
The backtrace from the exception handler is alway the same (docall -> main),

so it has no interest in an user point of view.

Previously :
$ ./parrot languages/lua/lua.pbc -e "error 'user_exception'"
lua.pbc: EVAL_1:34: user_exception
stack traceback:
        languages/lua/src/lib/luaaux.pir:205 in function 'lua_error'
        languages/lua/src/lib/luabasic.pir:336 in function 'error'
        EVAL_1:34 in function '&main_10'
        languages/lua/src/lib/luaaux.pir:916 in function 'docall'
        lua.pir:353 in function 'dostring'
        lua.pir:247 in function 'runargs'
        lua.pir:120 in function 'main'

Now:
$ ./parrot languages/lua/lua.pbc -e "error 'user_exception'"
lua.pbc: _._:0: user_exception
stack traceback:
        languages/lua/src/lib/luaaux.pir:920 in function 'docall'
        lua.pir:353 in function 'dostring'
        lua.pir:247 in function 'runargs'
        lua.pir:120 in function 'main'

François.

Reply via email to