Stefan Behnel wrote:
> Hi,
> 
> Dag Sverre Seljebotn wrote:
>> Note that the current -devel could be released for what I know, except 
>> for the things that are already noted, there's no rush as the systems 
>> work together.
> 
> There's one remaining problem with the for loop. It seems that in certain
> cases (at least in lxml, haven't got a trivial test case yet) it crashes
> due to multiple allocation of the same temp. I pasted the generated code
> section below, note how __pyx_t_4 is used. There's also an inner loop
> involved, which I left out here. Funny enough, it also uses __pyx_t_4 to
> store the iterator.

I couldn't provoke the exact same thing but at least found something 
similar. See http://hg.cython.org/cython-devel/rev/fe390f717039

In general it seems like all calls to generate_disposal_code must be 
looked at manually when converting a class to see what their intention 
is, and rewrite to the appropriate "two-staged disposal" manually. If 
you have a look through the rest of TupleNode I think you'll solve the 
problems...

I can see why you wanted a seperate free_temps, but, well, passing 
decref=False is the exactly same thing, we can always change it later 
with search&replace.


-- 
Dag Sverre
_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev

Reply via email to