From 0e89568975a5817dbb5a2752403d9b8d82046445 Mon Sep 17 00:00:00 2001 From: mdw Date: Fri, 10 Dec 1999 23:19:02 +0000 Subject: [PATCH] Improve error-checking. --- mp-jacobi.c | 6 +++++- mp-mem.c | 10 +++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/mp-jacobi.c b/mp-jacobi.c index 69f697e..2a1e109 100644 --- a/mp-jacobi.c +++ b/mp-jacobi.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: mp-jacobi.c,v 1.1 1999/11/22 20:50:37 mdw Exp $ + * $Id: mp-jacobi.c,v 1.2 1999/12/10 23:19:02 mdw Exp $ * * Compute Jacobi symbol * @@ -30,6 +30,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: mp-jacobi.c,v $ + * Revision 1.2 1999/12/10 23:19:02 mdw + * Improve error-checking. + * * Revision 1.1 1999/11/22 20:50:37 mdw * Add support for computing Jacobi symbols. * @@ -147,6 +150,7 @@ static int verify(dstr *v) mp_drop(a); mp_drop(n); + assert(mparena_count(MPARENA_GLOBAL) == 0); return (ok); } diff --git a/mp-mem.c b/mp-mem.c index 2f75365..833874d 100644 --- a/mp-mem.c +++ b/mp-mem.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: mp-mem.c,v 1.1 1999/11/17 18:02:16 mdw Exp $ + * $Id: mp-mem.c,v 1.2 1999/12/10 23:19:02 mdw Exp $ * * Memory management for multiprecision numbers * @@ -30,6 +30,9 @@ /*----- Revision history --------------------------------------------------* * * $Log: mp-mem.c,v $ + * Revision 1.2 1999/12/10 23:19:02 mdw + * Improve error-checking. + * * Revision 1.1 1999/11/17 18:02:16 mdw * New multiprecision integer arithmetic suite. * @@ -99,11 +102,12 @@ void mp_build(mp *m, mpw *v, mpw *vl) void mp_destroy(mp *m) { - if (m->f & MP_CONST) - return; + assert(((void)"Destroying a free integer", !(m->f & MP_DESTROYED))); + assert(((void)"Attempted to destroy a constant", !(m->f & MP_CONST))); if (m->f & MP_BURN) memset(m->v, 0, MPWS(m->sz)); MP_FREE(m->v); + m->f |= MP_DESTROYED; DESTROY(m); } -- 2.11.0