[GiNaC-devel] [SCM] GiNaC -- a C++ library for symbolic computations branch, ginac_1-5, updated. release_1-4-0-250-g89d5356

Richard B. Kreckel git at ginac.de
Thu Sep 23 00:57:15 CEST 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GiNaC -- a C++ library for symbolic computations".

The branch, ginac_1-5 has been updated
       via  89d5356b4aa33cb4481575f9453f36c3404b015b (commit)
      from  90ad10b58d02365a407b2d84d8b93e50030feaa5 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 89d5356b4aa33cb4481575f9453f36c3404b015b
Author: Richard Kreckel <kreckel at ginac.de>
Date:   Thu Sep 23 00:40:38 2010 +0200

    Make sure add::eval() collects all numeric terms.
    
    Apparently, add::eval() assumed that none of the elements of its epvector
    has a numeric rest. However, nothing guarantees that -- in particular
    evalchildren() doesn't (and actually cannot) do so. Since there are many
    places where a new add is constructed directly from an epvector, enforcing
    this doesn't make sense either. One example where it did fail was found by
    Burgin Erocal: real_part(1+2*(sqrt(2)+1)*(sqrt(2)-1)) returned 1+2*1, not 3.
    
    Thanks to Burcin Erocal for reporting this bug.
    (cherry picked from commit e08cda1854bdb82f6706ec269233577690ae00e4)

-----------------------------------------------------------------------

Summary of changes:
 check/exam_paranoia.cpp |   13 +++++++++++++
 ginac/add.cpp           |   31 ++++++++++++++++++++++++++++---
 2 files changed, 41 insertions(+), 3 deletions(-)


hooks/post-receive
--
GiNaC -- a C++ library for symbolic computations


More information about the GiNaC-devel mailing list