From d5273788df4b8e6f4a266bfac3fd63ac10265dc7 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Tue, 20 Jul 2010 17:26:53 +0200 Subject: [PATCH] Fix up "missing braces" warning. * src/eval.c (Feval, Ffuncall): Use the new names. * src/lisp.h (struct Lisp_Subr): Rename `am' to aMANY and add aUNEVALLED. (DEFUN): Add braces around the union initialisation and use ## to specify the right union alternative and avoid a cast. --- src/ChangeLog | 8 ++++++++ src/eval.c | 6 +++--- src/lisp.h | 6 ++++-- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 43b4c08dd2..81b4560e06 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2010-07-20 Stefan Monnier + + * eval.c (Feval, Ffuncall): Use the new names. + + * lisp.h (struct Lisp_Subr): Rename `am' to aMANY and add aUNEVALLED. + (DEFUN): Add braces around the union initialisation and use ## to + specify the right union alternative and avoid a cast. + 2010-07-18 Juanma Barranquero * makefile.w32-in ($(BLD)/keyboard.$(O)): Update dependencies. diff --git a/src/eval.c b/src/eval.c index 953a41e4b1..06888ca0dd 100644 --- a/src/eval.c +++ b/src/eval.c @@ -2299,7 +2299,7 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0, if (XSUBR (fun)->max_args == UNEVALLED) { backtrace.evalargs = 0; - val = (XSUBR (fun)->function.a1) (args_left); + val = (XSUBR (fun)->function.aUNEVALLED) (args_left); goto done; } @@ -2325,7 +2325,7 @@ DEFUN ("eval", Feval, Seval, 1, 1, 0, backtrace.args = vals; backtrace.nargs = XINT (numargs); - val = (XSUBR (fun)->function.am) (XINT (numargs), vals); + val = (XSUBR (fun)->function.aMANY) (XINT (numargs), vals); UNGCPRO; goto done; } @@ -2968,7 +2968,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */) if (XSUBR (fun)->max_args == MANY) { - val = (XSUBR (fun)->function.am) (numargs, args + 1); + val = (XSUBR (fun)->function.aMANY) (numargs, args + 1); goto done; } diff --git a/src/lisp.h b/src/lisp.h index 3ec2ed07ed..d1a14fcd89 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -971,7 +971,8 @@ struct Lisp_Subr Lisp_Object (*a6) (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object); Lisp_Object (*a7) (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object); Lisp_Object (*a8) (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object); - Lisp_Object (*am) (int, Lisp_Object *); + Lisp_Object (*aUNEVALLED) (Lisp_Object args); + Lisp_Object (*aMANY) (int, Lisp_Object *); } function; short min_args, max_args; const char *symbol_name; @@ -1775,7 +1776,8 @@ typedef struct { Lisp_Object fnname DEFUN_ARGS_ ## maxargs ; \ DECL_ALIGN (struct Lisp_Subr, sname) = \ { PVEC_SUBR | (sizeof (struct Lisp_Subr) / sizeof (EMACS_INT)), \ - (Lisp_Object(*)(void)) fnname, minargs, maxargs, lname, intspec, 0}; \ + { .a ## maxargs = fnname }, \ + minargs, maxargs, lname, intspec, 0}; \ Lisp_Object fnname /* Note that the weird token-substitution semantics of ANSI C makes -- 2.20.1