1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-03 12:31:32 -08:00

imrpve macros

This commit is contained in:
Andrea Corallo 2019-06-22 17:12:35 +02:00 committed by Andrea Corallo
parent 8f0bb7d264
commit a31a164ea0

View file

@ -125,15 +125,17 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
/* Pop from the meta-stack, emit the call and push the result */
#define EMIT_CALL_N(name, nargs) \
POP##nargs; \
res = emit_call (name, comp.lisp_obj_type, nargs, args); \
PUSH_RVAL (res);
do { \
POP##nargs; \
res = emit_call (name, comp.lisp_obj_type, nargs, args); \
PUSH_RVAL (res); \
} while (0)
/* Generate appropriate case and emit call to function. */
#define CASE_CALL_NARGS(name, nargs) \
case B##name: \
EMIT_CALL_N (STR(F##name), nargs) \
EMIT_CALL_N (STR(F##name), nargs); \
break
/* Emit calls to functions with prototype (ptrdiff_t nargs, Lisp_Object *args)