diff options
Diffstat (limited to 'src/boot/strap/parser.clisp')
-rw-r--r-- | src/boot/strap/parser.clisp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/boot/strap/parser.clisp b/src/boot/strap/parser.clisp index f6799dbf..f8417b34 100644 --- a/src/boot/strap/parser.clisp +++ b/src/boot/strap/parser.clisp @@ -863,6 +863,7 @@ (COND ((|bpEqPeek| 'BEC) (|bpRestore| |a|) (OR (|bpAssignment|) (|bpTrap|))) ((|bpEqPeek| 'GIVES) (|bpRestore| |a|) (OR (|bpLambda|) (|bpTrap|))) + ((|bpEqPeek| 'LARROW) (|bpRestore| |a|) (OR (|bpKeyArg|) (|bpTrap|))) (T T))) (T (|bpRestore| |a|) NIL)))))) @@ -874,6 +875,10 @@ (AND (|bpVariable|) (|bpEqKey| 'GIVES) (OR (|bpAssign|) (|bpTrap|)) (|bpPush| (|bfLambda| (|bpPop2|) (|bpPop1|))))) +(DEFUN |bpKeyArg| () + (AND (|bpName|) (|bpEqKey| 'LARROW) (|bpLogical|) + (|bpPush| (|bfKeyArg| (|bpPop2|) (|bpPop1|))))) + (DEFUN |bpExit| () (AND (|bpAssign|) (OR |