/* -*-c-*-
*
- * $Id: mpmul.c,v 1.2 2000/07/09 21:31:10 mdw Exp $
+ * $Id: mpmul.c,v 1.4 2001/02/03 12:00:29 mdw Exp $
*
* Multiply many small numbers together
*
/*----- Revision history --------------------------------------------------*
*
* $Log: mpmul.c,v $
+ * Revision 1.4 2001/02/03 12:00:29 mdw
+ * Now @mp_drop@ checks its argument is non-NULL before attempting to free
+ * it. Note that the macro version @MP_DROP@ doesn't do this.
+ *
+ * Revision 1.3 2000/10/08 12:11:22 mdw
+ * Use @MP_EQ@ instead of @MP_CMP@.
+ *
* Revision 1.2 2000/07/09 21:31:10 mdw
* Fix bug, and add a test rig.
*
x = mp_fromulong(x, j);
mpmul_add(&b, x);
}
- if (x)
- mp_drop(x);
+ mp_drop(x);
return (mpmul_done(&b));
}
mp *fx = *(mp **)v[1].buf;
mp *y = mp_factorial(x);
int ok = 1;
- if (MP_CMP(fx, !=, y)) {
+ if (!MP_EQ(fx, y)) {
fprintf(stderr, "factorial failed\n");
MP_FPRINTF(stderr, (stderr, "%lu! = ", x), fx);
MP_EPRINT("result", y);