#11339: Illegal use of __deallocate__ in cython (pyx) code
-----------------------------------------------+----------------------------
   Reporter:  gagern                           |          Owner:  drkirkby      
                 
       Type:  defect                           |         Status:  needs_review  
                 
   Priority:  major                            |      Milestone:  sage-4.7.1    
                 
  Component:  algebra                          |       Keywords:  sd31          
                 
Work_issues:                                   |       Upstream:  N/A           
                 
   Reviewer:  François Bissey, Steven Trogdon  |         Author:  Volker Braun, 
Martin von Gagern
     Merged:                                   |   Dependencies:                
                 
-----------------------------------------------+----------------------------
Changes (by vbraun):

  * status:  needs_info => needs_review


Comment:

 The updated polynomials patch fixes another place where potentially the
 wrong singular ring was used, which would explain the data corruption.
 Please give it a try!

 I'm pretty sure that `p_Normalize` requires `currRing` to be set. In the
 polynomials destructor, I have
 {{{
     ### If you suspect that the poly data was corrupted, then this is a
 good way to trigger a segfault:
     rChangeCurrRing(self._parent_ring)
     p_Normalize(self._poly, self._parent_ring)
 }}}
 This is useful for debugging because `p_Normalize` will touch all
 coefficients of the polynomial. The destructor is typically called long
 after the actual computations so it is very likely that the `currRing` has
 changed by then. If I reverse the order of the two lines, then I get
 segfaults all over the Sage library. However, because it relies on the
 finalization order, they are usually in varying places and often disappear
 if you just paste the doctest into Sage.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11339#comment:35>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to