[Cython] Temp allocation bug
Robert Bradshaw
robertwb at math.washington.edu
Mon Jan 19 23:55:51 CET 2009
On Jan 19, 2009, at 12:28 PM, Robert Bradshaw wrote:
> On Jan 18, 2009, at 3:48 AM, Dag Sverre Seljebotn wrote:
>
>> Stefan Behnel wrote:
>>> Hi,
>>>
>>> Robert Bradshaw wrote:
>>>> On Jan 17, 2009, at 4:41 AM, Stefan Behnel wrote:
>>>>
>>>>> Robert Bradshaw wrote:
>>>>>> It seems there's a bug in temp allocation, basically a temp is
>>>>>> allocated but never released (even though it's freed).
>>>>>>
>>>>>> See http://hg.cython.org/cython-devel/file/4f0327bdebc9/tests/
>>>>>> run/
>>>>>> call_crash.pyx
>>>>> The problem is that AttributeNode is not a NewTempExprNode and
>>>>> thus
>>>>> fails
>>>>> to pass on the request for freeing the temp. Changing its
>>>>> baseclass
>>>>> fixes
>>>>> this problem, but it also breaks tons of other test cases. It
>>>>> might
>>>>> just be
>>>>> one problem that kills all of them, but in any case, this needs
>>>>> some
>>>>> investigation. I'll try to look into it this weekend if I find the
>>>>> time.
>>>> Is this going to be a general problem with any inside a
>>>> NewTempExprNode (plain) ExprNode?
>>>
>>> I can't answer that in general, but the good news is that there
>>> are very
>>> few ExprNodes left, especially those that can contain
>>> subexpressions.
>>> Fixing the AttributeNode will get us pretty far. Sadly, I can't do
>>> that
>>> this weekend. So, if someone else could jump in and (at least)
>>> analyse the
>>> resulting problems after the switch, that would be great.
>>
>> My intention with NewTempExpr node was simultaneous use, and I
>> don't see
>> any obstacles in principle.
>>
>> In this case it was a rather embarrassing and simple mistake, fix
>> is up.
>
> Excellent, thanks! I'm compiling now and will run tests, will get
> back to you when it's done (usually take a couple of hours).
That took care of most of them, we're down to 6 failures in the
entire suite.
- Robert
More information about the Cython-dev
mailing list