#5979: Parent: fixes broken (implicit) invariant between ._element_constructor 
and
self._element_init_pass_parent
----------------------+-----------------------------------------------------
 Reporter:  nthiery   |       Owner:  nthiery                               
     Type:  defect    |      Status:  new                                   
 Priority:  major     |   Milestone:  sage-4.0                              
Component:  coercion  |    Keywords:  coercion, parents, element_constructor
----------------------+-----------------------------------------------------
 In Parent, there is an implicit invariant, namely that

         self._element_init_pass_parent == guess_pass_parent(between
 ._element_constructor)

 This invariant was broken when self._element_constructor was set from
 self._element_constructor_ by __call__. This made the parent not to be
 passed properly to _element_constructor.

 The category patch #5891 depends heavily on this one, as this way of
 setting _element_constructor becomes the default one for simple
 parents.

 By the way, this patch makes a related trivial fix to a line that is
 apparently never used in coerce_maps, and adds a comment about it.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5979>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of 
Reinventing the Wheel

--~--~---------~--~----~------------~-------~--~----~
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