diff options
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/ChangeLog | 3 | ||||
-rw-r--r-- | src/interp/compiler.boot | 2 | ||||
-rw-r--r-- | src/interp/property.lisp | 1 |
3 files changed, 4 insertions, 2 deletions
diff --git a/src/interp/ChangeLog b/src/interp/ChangeLog index ed40cfbb..63a96585 100644 --- a/src/interp/ChangeLog +++ b/src/interp/ChangeLog @@ -3,7 +3,8 @@ * compiler.boot (compileNot): New. * nspadaux.lisp: Don't register special parser for `not'-form. * postprop.lisp: Likewise. - * property.lisp: Likewise. + * property.lisp: Likewise. + Register compileNot as special handler for `not'-forms. * parse.boot (parseNot): Remove. 2007-11-25 Gabriel Dos Reis <gdr@cs.tamu.edu> diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index 7e2d3066..cd912ee4 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -993,7 +993,7 @@ compImport(["import",:doms],m,e) == ++ compile a logical negation form `(not ...)'. compileNot(x,m,e) == - x isn't ["not", y] => nil + x isnt ["not", y] => nil -- If there is a modemap available that can make this work, just use it. T := compForm(x,m,e) => T diff --git a/src/interp/property.lisp b/src/interp/property.lisp index 0879574b..e71fd3cb 100644 --- a/src/interp/property.lisp +++ b/src/interp/property.lisp @@ -590,6 +590,7 @@ (VECTOR |compVector|) (|VectorCategory| |compConstructorCategory|) (|where| |compWhere|) + (|not| |compileNot|) )) (MAKEPROP (CAR X) 'SPECIAL (CREATE-SBC (CADR X)))) (REPEAT (IN X '( |