diff --git a/libguile/array-map.c b/libguile/array-map.c index dd8813602..d442bdf4e 100644 --- a/libguile/array-map.c +++ b/libguile/array-map.c @@ -168,13 +168,16 @@ scm_ra_matchp (SCM ra0, SCM ras) SCM lra; list of source arrays. const char *what; caller, for error reporting. */ int -scm_ramapc (int (*cproc)(), SCM data, SCM ra0, SCM lra, const char *what) +scm_ramapc (void *cproc_ptr, SCM data, SCM ra0, SCM lra, const char *what) { SCM z; SCM vra0, ra1, vra1; SCM lvra, *plvra; long *vinds; int k, kmax; + int (*cproc) (); + + cproc = cproc_ptr; switch (scm_ra_matchp (ra0, lra)) { default: diff --git a/libguile/array-map.h b/libguile/array-map.h index 471861bee..43d2a9281 100644 --- a/libguile/array-map.h +++ b/libguile/array-map.h @@ -3,7 +3,8 @@ #ifndef SCM_ARRAY_MAP_H #define SCM_ARRAY_MAP_H -/* Copyright (C) 1995,1996,1997,2000, 2006, 2008, 2009, 2010 Free Software Foundation, Inc. +/* Copyright (C) 1995, 1996, 1997, 2000, 2006, 2008, 2009, 2010, + * 2011 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -28,7 +29,7 @@ SCM_API int scm_ra_matchp (SCM ra0, SCM ras); -SCM_API int scm_ramapc (int (*cproc) (), SCM data, SCM ra0, SCM lra, +SCM_API int scm_ramapc (void *cproc, SCM data, SCM ra0, SCM lra, const char *what); SCM_API int scm_array_fill_int (SCM ra, SCM fill, SCM ignore); SCM_API SCM scm_array_fill_x (SCM ra, SCM fill);