#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.