diff --git a/src/main.h b/src/main.h index 3a01b49..f06d4bb 100644 --- a/src/main.h +++ b/src/main.h @@ -230,7 +230,10 @@ SCM_DEFINE (G_ ## c_func, zile_func, \ /* Call an interactive function. */ #define FUNCALL(c_func) \ - gfuncall (G_ ## c_func) + ({ \ + extern SCM G_ ## c_func (); \ + gfuncall (G_ ## c_func); \ + }) /* Call an interactive function with a universal argument. */ #define FUNCALL_ARG(c_func, uniarg) \ @@ -330,11 +333,17 @@ SCM_DEFINE (G_ ## c_func, zile_func, \ cname = true; \ } -#define G_FUNCALL(c_func) \ - gfuncall (G_ ## c_func) - -#define G_FUNCALL_ARG(c_func, uniarg) \ - gfuncall_arg (G_ ## c_func, uniarg) +#define G_FUNCALL(c_func) \ + ({ \ + extern SCM G_ ## c_func (); \ + gfuncall (G_ ## c_func); \ + }) + +#define G_FUNCALL_ARG(c_func, uniarg) \ + ({ \ + extern SCM G_ ## c_func (); \ + gfuncall_arg (G_ ## c_func, uniarg); \ + }) /*-------------------------------------------------------------------------- * Keyboard handling.