From: Christian Bauer Date: Wed, 2 Aug 2000 19:38:01 +0000 (+0000) Subject: - fixed "normal(2-2*(1+a)/(-1-a))" bug: add::normal() assumed that if the X-Git-Tag: release_0-6-4~6 X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=commitdiff_plain;h=a687469326fac3ea8a349810b69c264ebe3af9b3;ds=sidebyside - fixed "normal(2-2*(1+a)/(-1-a))" bug: add::normal() assumed that if the common denominator is 1, all denominators would be 1 (they can be +/-1) --- diff --git a/ginac/normal.cpp b/ginac/normal.cpp index 9cc65cad..b396771f 100644 --- a/ginac/normal.cpp +++ b/ginac/normal.cpp @@ -1947,10 +1947,10 @@ ex add::normal(lst &sym_lst, lst &repl_lst, int level) const // Add fractions if (den.is_equal(_ex1())) { - // Common denominator is 1, simply add all numerators + // Common denominator is 1, simply add all fractions exvector num_seq; for (ait=o.begin(); ait!=aitend; ait++) { - num_seq.push_back(ait->op(0)); + num_seq.push_back(ait->op(0) / ait->op(1)); } return (new lst((new add(num_seq))->setflag(status_flags::dynallocated), den))->setflag(status_flags::dynallocated);