From 28af0c61424430160a5b19e5d24ff64a5cc417d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=BCbinette=20=28Hubbe=29?= <hubbe@hubbe.net> Date: Tue, 23 Mar 1999 08:22:07 -0800 Subject: [PATCH] bugfixes Rev: src/block_alloc.h:1.6 Rev: src/error.c:1.29 Rev: src/errors.h:1.3 --- src/block_alloc.h | 4 ++-- src/error.c | 11 ++++++++++- src/errors.h | 1 + 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/block_alloc.h b/src/block_alloc.h index fe54e43944..9d7eae0b2f 100644 --- a/src/block_alloc.h +++ b/src/block_alloc.h @@ -1,4 +1,4 @@ -/* $Id: block_alloc.h,v 1.5 1999/01/31 09:01:39 hubbe Exp $ */ +/* $Id: block_alloc.h,v 1.6 1999/03/23 16:22:05 hubbe Exp $ */ #undef PRE_INIT_BLOCK #undef INIT_BLOCK #undef EXIT_BLOCK @@ -49,7 +49,7 @@ struct DATA *PIKE_CONCAT(alloc_,DATA)(void) \ return tmp; \ } \ \ -inline void PIKE_CONCAT(really_free_,DATA)(struct DATA *d) \ +void PIKE_CONCAT(really_free_,DATA)(struct DATA *d) \ { \ EXIT_BLOCK(d); \ d->next=PIKE_CONCAT3(free_,DATA,s); \ diff --git a/src/error.c b/src/error.c index 90e870b871..189d97da46 100644 --- a/src/error.c +++ b/src/error.c @@ -18,7 +18,7 @@ #include "operators.h" #include "module_support.h" -RCSID("$Id: error.c,v 1.28 1999/03/23 02:51:07 marcus Exp $"); +RCSID("$Id: error.c,v 1.29 1999/03/23 16:22:06 hubbe Exp $"); #undef ATTRIBUTE #define ATTRIBUTE(X) @@ -441,9 +441,18 @@ void bad_arg_error( void math_error( char *func, struct svalue *base_sp, int args, + struct svalue *number, char *desc, ...) ATTRIBUTE((noreturn,format (printf, 4, 5))) { INIT_ERROR(math); + if(number) + { + ERROR_COPY_SVALUE(bad_arg, number); + }else{ + ERROR_STRUCT(bad_arg,o)->number.type=T_INT; + ERROR_STRUCT(bad_arg,o)->number.subtype=NUMBER_UNDEFINED; + ERROR_STRUCT(bad_arg,o)->number.u.integer=0; + } ERROR_DONE(generic); } diff --git a/src/errors.h b/src/errors.h index c4abce4453..daeb904cf0 100644 --- a/src/errors.h +++ b/src/errors.h @@ -83,6 +83,7 @@ DECLARE_ERROR(bad_arg, DECLARE_ERROR(math, ERR_INHERIT(generic), + ERR_VAR(struct svalue, mixed, T_MIXED, number) ) DECLARE_ERROR(resource, -- GitLab