source file of the GNU LilyPond music typesetter
- (c) 1998--2005 Jan Nieuwenhuizen <janneke@gnu.org>
+ (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
*/
#ifndef LILY_GUILE_HH
#include <libguile.h>
+
+/*
+ Hack for various MacOS incarnations.
+ */
+#ifndef GUILE_ELLIPSIS
+#define GUILE_ELLIPSIS
+#endif
+
+
#include "guile-compatibility.hh"
#include "interval.hh"
#include "lily-guile-macros.hh"
Real robust_scm2double (SCM, double);
int robust_scm2int (SCM, int);
+Direction robust_scm2dir (SCM, Direction);
Drul_array<Real> robust_scm2drul (SCM, Drul_array<Real>);
+Drul_array<bool> robust_scm2booldrul (SCM, Drul_array<bool>);
Interval robust_scm2interval (SCM, Drul_array<Real>);
Offset robust_scm2offset (SCM, Offset);
SCM ly_alist_vals (SCM alist);
SCM ly_hash2alist (SCM tab);
+int procedure_arity (SCM);
+
/* inserts at front, removing dublicates */
inline SCM ly_assoc_front_x (SCM alist, SCM key, SCM val)
{
void add_scm_init_func (void (*) ());
extern "C" {
- typedef SCM (*Scheme_function_unknown) ();
+ typedef SCM (*Scheme_function_unknown) (GUILE_ELLIPSIS);
}
#if __GNUC__ > 2 || __GNUC_MINOR__ >= 96
typedef SCM (*Scheme_function_2) (SCM, SCM);
typedef SCM (*Scheme_function_3) (SCM, SCM, SCM);
#else
-typedef SCM (*Scheme_function_0) (...);
-typedef SCM (*Scheme_function_1) (...);
-typedef SCM (*Scheme_function_2) (...);
-typedef SCM (*Scheme_function_3) (...);
+typedef SCM (*Scheme_function_0) (GUILE_ELLIPSIS);
+typedef SCM (*Scheme_function_1) (GUILE_ELLIPSIS);
+typedef SCM (*Scheme_function_2) (GUILE_ELLIPSIS);
+typedef SCM (*Scheme_function_3) (GUILE_ELLIPSIS);
#endif
#define scm_cdr ly_cdr