X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=lily%2Fmodule-scheme.cc;h=72a32e480190e05664687f8553e83c6d03bfee8d;hb=20b6e6264d2a7b2a21fe69e3b720f0b71ef6583f;hp=07943858a636a18b0248c7475d0c3229c43689e2;hpb=b0984ac0eae12ef21adcdbc4922354e731e8f22d;p=lilypond.git diff --git a/lily/module-scheme.cc b/lily/module-scheme.cc index 07943858a6..72a32e4801 100644 --- a/lily/module-scheme.cc +++ b/lily/module-scheme.cc @@ -1,9 +1,20 @@ /* - lily/module-scheme.cc -- implement module bindings + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2005--2010 Han-Wen Nienhuys - (c) 2005--2007 Han-Wen Nienhuys + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . */ #include "ly-module.hh" @@ -19,9 +30,11 @@ */ static SCM -module_define_closure_func (void *closure, SCM key, SCM val, SCM result) +module_define_closure_func (void *closure, + SCM key, + SCM val, + SCM /* result */) { - (void) result; SCM module = (SCM) closure; if (scm_variable_bound_p (val) == SCM_BOOL_T) scm_module_define (module, key, scm_variable_ref (val)); @@ -34,23 +47,12 @@ LY_DEFINE (ly_module_copy, "ly:module-copy", { #define FUNC_NAME __FUNCTION__ SCM_VALIDATE_MODULE (1, src); - scm_internal_hash_fold ((Hash_closure_function) & module_define_closure_func, + scm_internal_hash_fold ((scm_t_hash_fold_fn) &module_define_closure_func, (void *) dest, SCM_EOL, SCM_MODULE_OBARRAY (src)); return SCM_UNSPECIFIED; } -LY_DEFINE (ly_clear_anonymous_modules, "ly:clear-anonymous-modules", - 0, 0, 0, (), - "Plug a GUILE 1.6 and 1.7 memory leak by breaking a weak" - " reference pointer cycle explicitly.") -{ -#ifdef MODULE_GC_KLUDGE - clear_anonymous_modules (); -#endif - - return SCM_UNSPECIFIED; -} /* Lookup SYM, but don't give error when it is not defined. */ SCM