28 if (q ==
NULL)
return p;
29 if (p ==
NULL)
return q;
35 DECLARE_LENGTH(
const unsigned long length = r->CmpL_Size);
36 DECLARE_ORDSGN(
const long* ordsgn = r->ordsgn);
39 p_MemCmp__T(p->exp, q->exp, length, ordsgn,
goto Equal,
goto Greater ,
goto Smaller);
44 n_InpAdd__T(n1,n2,r->cf);
49 if (n_IsZero__T(t, r->cf))
62 if (p==
NULL) {
pNext(a) = q;
goto Finish;}
69 if (p==
NULL) {
pNext(a) = q;
goto Finish;}
LINKAGE poly p_Add_q__T(poly p, poly q, int &Shorter, const ring r)
static BOOLEAN Equal(number a, number b, const coeffs r)
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy ...
static int pLength(poly a)
#define n_Delete__T(n, r)
static poly p_LmFreeAndNext(poly p, ring)
static bool Greater(mono_type m1, mono_type m2)