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);
45 t = n_Add__T(n1,n2, r->cf);
48 n_InpAdd__T(n1,n2,r->cf);
54 if (n_IsZero__T(t, r->cf))
67 if (p==
NULL) {
pNext(a) = q;
goto Finish;}
74 if (p==
NULL) {
pNext(a) = q;
goto Finish;}
LINKAGE poly p_Add_q__T(poly p, poly q, int &Shorter, const ring 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)