Mercurial > emacs
diff src/lisp.h @ 95112:0835cb21d60e
* lisp.h (indirect_variable):
* data.c (indirect_variable, let_shadows_buffer_binding_p):
Use Lisp_Symbol pointers rather than Lisp_Object. Adjust callers.
* buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
To this end, change calling-convention.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Mon, 19 May 2008 18:38:55 +0000 |
parents | 29adfc9354e7 |
children | b8f0e53854e1 |
line wrap: on
line diff
--- a/src/lisp.h Mon May 19 16:29:33 2008 +0000 +++ b/src/lisp.h Mon May 19 18:38:55 2008 +0000 @@ -993,7 +993,7 @@ #define SYMBOL_VALUE(sym) \ (XSYMBOL (sym)->indirect_variable \ - ? XSYMBOL (indirect_variable (sym))->value \ + ? indirect_variable (XSYMBOL (sym))->value \ : XSYMBOL (sym)->value) /* Set SYM's value to VAL, taking defvaralias into account. */ @@ -1001,7 +1001,7 @@ #define SET_SYMBOL_VALUE(sym, val) \ do { \ if (XSYMBOL (sym)->indirect_variable) \ - XSYMBOL (indirect_variable ((sym)))->value = (val); \ + indirect_variable (XSYMBOL (sym))->value = (val); \ else \ XSYMBOL (sym)->value = (val); \ } while (0) @@ -2263,7 +2263,7 @@ EXFUN (Fsub1, 1); EXFUN (Fmake_variable_buffer_local, 1); -extern Lisp_Object indirect_variable P_ ((Lisp_Object)); +extern struct Lisp_Symbol *indirect_variable (struct Lisp_Symbol *); extern Lisp_Object long_to_cons P_ ((unsigned long)); extern unsigned long cons_to_long P_ ((Lisp_Object)); extern void args_out_of_range P_ ((Lisp_Object, Lisp_Object)) NO_RETURN;