diff options
Diffstat (limited to 'src/boot/strap/parser.clisp')
-rw-r--r-- | src/boot/strap/parser.clisp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/boot/strap/parser.clisp b/src/boot/strap/parser.clisp index 716b86d1..5683aef5 100644 --- a/src/boot/strap/parser.clisp +++ b/src/boot/strap/parser.clisp @@ -700,11 +700,13 @@ (DEFUN |bpIs| () (AND (|bpArith|) - (OR (AND (|bpInfKey| '(IS ISNT)) (OR (|bpPattern|) (|bpTrap|)) - (|bpPush| - (|bfISApplication| (|bpPop2|) (|bpPop2|) - (|bpPop1|)))) - T))) + (COND + ((AND (|bpInfKey| '(IS ISNT)) (OR (|bpPattern|) (|bpTrap|))) + (|bpPush| + (|bfISApplication| (|bpPop2|) (|bpPop2|) (|bpPop1|)))) + ((AND (|bpEqKey| 'HAS) (OR (|bpApplication|) (|bpTrap|))) + (|bpPush| (|bfHas| (|bpPop2|) (|bpPop1|)))) + (T T)))) (DEFUN |bpBracketConstruct| (|f|) (AND (|bpBracket| |f|) (|bpPush| (|bfConstruct| (|bpPop1|))))) |