diff options
-rw-r--r-- | src/interp/g-opt.boot | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/interp/g-opt.boot b/src/interp/g-opt.boot index 76f629f6..84ad5a13 100644 --- a/src/interp/g-opt.boot +++ b/src/interp/g-opt.boot @@ -832,6 +832,10 @@ optNot(x is ['%not,a]) == a is '%true => '%false a is '%false => '%true a is ['%not,b] => b + a is ['%and,:args] => + optOr ['%or,:[optNot ['%not,x] for x in args]] + a is ['%or,:args] => + optAnd ['%and,:[optNot ['%not,x] for x in args]] a is ['%when,:.] => optCond [a.op, :[[p,optNot ['%not,c]] for [p,c] in a.args]] x |