diff --git a/lib-src/libnyquist/nyquist/xlisp/xlftab.c b/lib-src/libnyquist/nyquist/xlisp/xlftab.c index b6969553b..652c14b9c 100644 --- a/lib-src/libnyquist/nyquist/xlisp/xlftab.c +++ b/lib-src/libnyquist/nyquist/xlisp/xlftab.c @@ -424,7 +424,7 @@ FUNDEF init_funtab[] = { FUNDEF *funtab = init_funtab; static size_t szfuntab = sizeof(init_funtab) / sizeof(*init_funtab); -int xlbindfunctions(FUNDEF *functions, size_t nfunctions) +int xlbindfunctions(const FUNDEF *functions, size_t nfunctions) { /* This is written very generally, imposing no fixed upper limit on the growth of the table. But perhaps a lightweight alternative with such a diff --git a/lib-src/libnyquist/nyquist/xlisp/xlisp.h b/lib-src/libnyquist/nyquist/xlisp/xlisp.h index 0c2ccef07..736ce37bb 100644 --- a/lib-src/libnyquist/nyquist/xlisp/xlisp.h +++ b/lib-src/libnyquist/nyquist/xlisp/xlisp.h @@ -13,6 +13,13 @@ HISTORY /* system specific definitions */ +#ifndef __XLISP__ +#define __XLISP__ + +#ifdef __cplusplus +extern "C" { +#endif + #include /* needed for getenv(); note that this was a problem for PMAX implementation, but I assume PMAX is obsolete now. - RBD 16apr04 */ @@ -378,7 +385,7 @@ void dbg_gc_xlsave(LVAL *n); /* function definition structure */ typedef struct { - char *fd_name; /* function name */ + const char *fd_name; /* function name */ int fd_type; /* function type */ LVAL (*fd_subr)(void); /* function entry point */ } FUNDEF; @@ -688,7 +695,7 @@ void xlsymbols(void); false if table limits would be exceeded and the table remains unchanged Call this, any number of times, before calling xlisp_main_init */ -int xlbindfunctions(FUNDEF *functions, size_t nfunctions); +int xlbindfunctions(const FUNDEF *functions, size_t nfunctions); /* xlio.c */ @@ -1055,3 +1062,10 @@ void localinit(void); void localsymbols(void); void print_local_gc_info(void); void local_toplevel(void); + +#ifdef __cplusplus +} +#endif + +#endif +