[Stackless] Stackless for Python 2.5b2 / help required

Richard Tew richard.m.tew at gmail.com
Fri Aug 4 23:00:50 CEST 2006


On 8/4/06, Jeff Senn <senn at maya.com> wrote:
> So I think this patch (an alternative to yours) also fixes the problem,
> but in a way that is *much* easier to understand and more consistent with the
> original intent:
>
>
>          if (throwflag) { /* support for generator.throw() */
>                  why = WHY_EXCEPTION;
> +#ifdef STACKLESS
> +               if(f->f_execute == PyEval_EvalFrame_noval) {
> +                 f->f_execute = PyEval_EvalFrame_value;
> +               }
> +#endif
>                  goto on_error;
>          }

If stackless_call exits the current frame knowing that
it needs the return value of the function to be put on the stack
but leaving _noval in place, then I think that  it is doing
something wrong intentionally.

I don't know that the general problem of frames
getting executed with incorrect f_execute values can
be correctly identified at the start of the function.

Have you run the Python regression tests and Stackless
unit tests with your fix in place?

Richard.

_______________________________________________
Stackless mailing list
Stackless at stackless.com
http://www.stackless.com/mailman/listinfo/stackless



More information about the Stackless mailing list