From: Camm Maguire Date: Sun, 13 Nov 2022 12:55:14 +0000 (+0000) Subject: X-Git-Tag: archive/raspbian/2.7.1-4+rpi1~2^2^2~3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=b713794ff56a4146d7ff66dcde635358ac7032d0;p=gcl27.git TODO: Put a short summary on the line above and replace this paragraph with a longer explanation of this change. Complete the meta-information with other relevant fields (see below for details). To make it easier, the information below has been extracted from the changelog. Adjust it or drop it. gcl (2.6.12-126) unstable; urgency=medium * Version_2.6.13pre126 Gbp-Pq: Name Version_2_6_13pre126 --- diff --git a/git.tag b/git.tag index 76d0cd4..f4a2018 100644 --- a/git.tag +++ b/git.tag @@ -1,2 +1,2 @@ -"Version_2_6_13pre125" +"Version_2_6_13pre126" diff --git a/h/compprotos.h b/h/compprotos.h index 80c7f56..f7cfe05 100644 --- a/h/compprotos.h +++ b/h/compprotos.h @@ -179,5 +179,6 @@ void gcl_init_or_load1(void (*)(void),const char *); char *gcl_gets(char *,int); int gcl_puts(const char *); int endp_error(object); -object Icall_gen_error_handler(object,object,object,object,ufixnum,...) __attribute__((noreturn)); +object Icall_gen_error_handler(object,object,object,object,ufixnum,...); +object Icall_gen_error_handler_noreturn(object,object,object,object,ufixnum,...) __attribute__((noreturn)); object file_stream(object); diff --git a/h/error.h b/h/error.h index 4d951f2..a206163 100644 --- a/h/error.h +++ b/h/error.h @@ -2,7 +2,7 @@ #define ERROR_H #define Icall_error_handler(a_,b_,c_,d_...) \ - Icall_gen_error_handler(Cnil,null_string,a_,b_,c_,##d_) + Icall_gen_error_handler_noreturn(Cnil,null_string,a_,b_,c_,##d_) #define Icall_continue_error_handler(a_,b_,c_,d_,e_...) \ Icall_gen_error_handler(Ct,a_,b_,c_,d_,##e_) diff --git a/o/error.c b/o/error.c index 484892d..98834fa 100755 --- a/o/error.c +++ b/o/error.c @@ -126,12 +126,11 @@ ihs_top_function_name(ihs_ptr h) return(Cnil); } -object -Icall_gen_error_handler(object ci,object cs,object en,object es,ufixnum n,...) { +static object +Icall_gen_error_handler_ap(object ci,object cs,object en,object es,ufixnum n,va_list ap) { object *b; ufixnum i; - va_list ap; n+=5; b=alloca(n*sizeof(*b)); @@ -141,17 +140,47 @@ Icall_gen_error_handler(object ci,object cs,object en,object es,ufixnum n,...) { b[3] = cs; b[4] = es; - va_start(ap,n); for (i=5;i