#10993: Update eclib to latest upstream release
-----------------------------------+----------------------------------------
       Reporter:  cremona          |         Owner:  cremona                    
     
           Type:  enhancement      |        Status:  needs_work                 
     
       Priority:  major            |     Milestone:  sage-5.0                   
     
      Component:  packages         |    Resolution:                             
     
       Keywords:  elliptic curves  |   Work issues:  ldconfig in spkg-install   
     
Report Upstream:  N/A              |     Reviewers:  Frithjof Schulze, Jeroen 
Demeyer
        Authors:  John Cremona     |     Merged in:                             
     
   Dependencies:  #11354           |      Stopgaps:                             
     
-----------------------------------+----------------------------------------

Comment (by cremona):

 OK, fixed: the code now compiles without warning with clang and test pass
 (for me).  There were a few minor compiler warnings, which I dealt with
 (though only one was a real error and that was in some code no longer
 used).

 For the record, here's the issue which caused the check to fail.   In the
 file tests/tperiods.cc, I read in the coefficients of an elliptic curve
 and construct the curve from it with a flag set to say to construct the
 associated minimal model; and that was not being done.  The old line
 {{{
 Curvedata CD(Curvedata(ai,v),1);
 }}}
 first constructs an instance of type Curvedata from a vector of rationals
 called ai with an additional reference parameter v which is undefined on
 input but holds a bigint scaling factor on output, then passes that
 Curvedata object back to a different Curvedata constructor whose first
 argument is a Curvedata object and second argument is an int flag to
 indicate whether or not to convert to a minimal model.  I have replaced
 this with two lines
 {{{
 Curvedata CDin(ai,v); // v holds scaling factor
 Curvedata CD(CDin,1); // 1 for minimise
 }}}
 where the temporary object CDin which I never use is now declared
 explicitly.  Something was clearly going wrong with the temporary object,
 but who knows what.  I would say that this is a compiler error, but do not
 wish to get into any arguments about it -- the code now works with clang
 and gcc, while before it only worked with clang.

 There's a new tarball at
 
http://homepages.warwick.ac.uk/staff/J.E.Cremona/ftp/progs/eclib-2012-04-16.tar.gz

 One final comment:  building with clang took an *extremely* long time
 compared with gcc, so I really hope that I never have to use it again!

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10993#comment:79>
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