X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fsimple-closure.cc;h=e99c8570b79079cb7f965e274c40012c432b95d6;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=a4204cddc4e381a7bd68f886af5da850fd5224c9;hpb=ef96995c66220cf1f49a98e43b5fcfe9a2f1bac1;p=lilypond.git diff --git a/lily/simple-closure.cc b/lily/simple-closure.cc index a4204cddc4..e99c8570b7 100644 --- a/lily/simple-closure.cc +++ b/lily/simple-closure.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 2005--2014 Han-Wen Nienhuys + Copyright (C) 2005--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify @@ -50,7 +50,7 @@ evaluate_with_simple_closure (SCM delayed_argument, if (Simple_closure *sc = Simple_closure::unsmob (expr)) { SCM inside = sc->expression (); - SCM proc = !pure && Unpure_pure_container::unsmob (scm_car (inside)) + SCM proc = !pure && Unpure_pure_container::is_smob (scm_car (inside)) ? Unpure_pure_container::unsmob (scm_car (inside))->unpure_part () : scm_car (inside); SCM args = scm_cons (delayed_argument, @@ -66,10 +66,10 @@ evaluate_with_simple_closure (SCM delayed_argument, return expr; else if (scm_car (expr) == ly_symbol2scm ("quote")) return scm_cadr (expr); - else if (Unpure_pure_container::unsmob (scm_car (expr)) + else if (Unpure_pure_container::is_smob (scm_car (expr)) || ly_is_procedure (scm_car (expr))) { - SCM proc = !pure && Unpure_pure_container::unsmob (scm_car (expr)) + SCM proc = !pure && Unpure_pure_container::is_smob (scm_car (expr)) ? Unpure_pure_container::unsmob (scm_car (expr))->unpure_part () : scm_car (expr); SCM args = evaluate_args (delayed_argument, scm_cdr (expr), pure, start, end); @@ -114,10 +114,10 @@ LY_DEFINE (ly_eval_simple_closure, "ly:eval-simple-closure", } int -Simple_closure::print_smob (SCM s, SCM port, scm_print_state *) +Simple_closure::print_smob (SCM port, scm_print_state *) { scm_puts ("#", port); return 1; }