From 395761a558369ea65a229f55700c5c6b18fc5fd5 Mon Sep 17 00:00:00 2001 From: jjgarcia Date: Mon, 28 Apr 2003 18:23:16 +0000 Subject: [PATCH] In destructuring lambda lists, a destructuring form may appear in the position of a variable, even after a &KEY form. In LAMBDA-BLOCK, deduce the block name from the function name. --- src/c/compiler.d | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/c/compiler.d b/src/c/compiler.d index 92f5385d5..aa612d2b2 100644 --- a/src/c/compiler.d +++ b/src/c/compiler.d @@ -2325,7 +2325,8 @@ REST: if (stage >= AT_REST) if (endp(CDR(v)) || !endp(CDDR(v))) goto ILLEGAL_LAMBDA; v = CADR(v); - assert_type_symbol(v); + if (context == @'function') + assert_type_symbol(v); assert_type_symbol(key); } else { int intern_flag; @@ -2475,7 +2476,7 @@ make_lambda(cl_object name, cl_object lambda) { } if (!Null(name)) - c_register_block(name); + c_register_block(si_function_block_name(name)); if ((current_pc() - label) == 1) set_pc(label);