[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?


Stackless mailing list
Stackless at stackless.com

More information about the Stackless mailing list