[GiNaC-devel] [SCM] GiNaC -- a C++ library for symbolic computations branch, c++11, updated. release_1-4-0-501-g65f2693
Richard B. Kreckel
git at ginac.de
Tue Dec 1 23:31:38 CET 2015
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, c++11 has been updated
via 65f2693a0948d1db0bc68d7656c64e1fed91c158 (commit)
from 00d612ce3789ba9240ade1b8bf06b26c326bd8f2 (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 65f2693a0948d1db0bc68d7656c64e1fed91c158
Author: Richard Kreckel <kreckel at ginac.de>
Date: Mon Nov 30 23:06:53 2015 +0100
Improve method of setting status_flags::dynallocated.
There seems to be no way to obsolete the need to mark an object derived
from basic and handled by ex as being 'on the heap', at least none that
doesn't have significant performance impact. Having said that, this
patch aims at making this process simpler and more intuitive.
Where, before, one would return from a function returning an ex with
return (new mul(a, b))->setflag(status_flags::dynallocated);
this patch lets us return with
return dynallocate<mul>(a, b);
which should be much clearer. In any case, it involves less typing.
The two points where the status_flags::dynallocated are set are now
* the dynallocate<B>(args...) template function and
* the virtual duplicate() member functions.
This patch rolls out the new functionality throughout the library.
-----------------------------------------------------------------------
Summary of changes:
check/exam_factor.cpp | 2 +-
check/exam_mod_gcd.cpp | 2 +-
ginac/add.cpp | 51 ++++++++------------
ginac/basic.cpp | 4 +-
ginac/basic.h | 34 ++++++++++++-
ginac/clifford.cpp | 53 ++++++++++-----------
ginac/color.cpp | 10 ++--
ginac/ex.cpp | 25 ++--------
ginac/expairseq.cpp | 2 +-
ginac/function.cppy | 3 +-
ginac/idx.cpp | 13 +++--
ginac/indexed.cpp | 19 ++++----
ginac/inifcns.cpp | 2 +-
ginac/inifcns_trans.cpp | 4 +-
ginac/integral.cpp | 15 ++----
ginac/matrix.cpp | 28 +++++------
ginac/mul.cpp | 55 ++++++++++-----------
ginac/ncmul.cpp | 41 +++++++---------
ginac/normal.cpp | 83 ++++++++++++++++----------------
ginac/numeric.cpp | 21 ++++----
ginac/operators.cpp | 8 ++--
ginac/parser/parse_binop_rhs.cpp | 14 +++---
ginac/polynomial/collect_vargs.cpp | 4 +-
ginac/polynomial/divide_in_z_p.cpp | 2 +-
ginac/polynomial/euclid_gcd_wrap.h | 2 +-
ginac/power.cpp | 86 ++++++++++++++-------------------
ginac/power.h | 4 +-
ginac/pseries.cpp | 30 +++++-------
ginac/registrar.h | 7 ++-
ginac/relational.cpp | 4 +-
ginac/symbol.h | 14 +++++-
ginac/symmetry.cpp | 24 +++++-----
ginac/tensor.cpp | 18 +++----
ginac/utils.cpp | 98 +++++++++++++++++++-------------------
34 files changed, 378 insertions(+), 404 deletions(-)
hooks/post-receive
--
GiNaC -- a C++ library for symbolic computations
More information about the GiNaC-devel
mailing list