From 3683521deae475f3c664cfc0404700856722fce8 Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Sat, 17 Feb 2007 10:59:09 +0100 Subject: [PATCH] evalue.c: evalue_frac2polynomial: improve accuracy The constant of a polynomial expression in a fractional value is not affected by the fractional value. --- evalue.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/evalue.c b/evalue.c index 8c2848c..0c27ef3 100644 --- a/evalue.c +++ b/evalue.c @@ -3468,12 +3468,13 @@ static void evalue_frac2polynomial_r(evalue *e, int *signs, int sign, int in_fra return; } - in_frac |= e->x.p->type == fractional; if (e->x.p->type == polynomial) { sign *= signs[e->x.p->pos-1]; } offset = type_offset(e->x.p); - for (i = e->x.p->size-1; i >= offset; --i) + evalue_frac2polynomial_r(&e->x.p->arr[offset], signs, sign, in_frac); + in_frac |= e->x.p->type == fractional; + for (i = e->x.p->size-1; i > offset; --i) evalue_frac2polynomial_r(&e->x.p->arr[i], signs, sign, in_frac); if (e->x.p->type != fractional) -- 2.11.4.GIT