From 664ef2c0a3bb478634591b596f2473f249095e4f Mon Sep 17 00:00:00 2001 From: Vincent St-Amour Date: Mon, 24 May 2010 17:58:58 -0400 Subject: [PATCH] Extended the type signatures of bitwise operations to be closed on naturals. --- collects/typed-scheme/private/base-env.rkt | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/collects/typed-scheme/private/base-env.rkt b/collects/typed-scheme/private/base-env.rkt index f3fe608186..db91883da6 100644 --- a/collects/typed-scheme/private/base-env.rkt +++ b/collects/typed-scheme/private/base-env.rkt @@ -422,13 +422,19 @@ [match:error ((list) Univ . ->* . (Un))] -[arithmetic-shift (-Integer -Integer . -> . -Integer)] -[bitwise-and (null -Integer . ->* . -Integer)] -[bitwise-ior (null -Integer . ->* . -Integer)] -[bitwise-not (null -Integer . ->* . -Integer)] -[bitwise-xor (null -Integer . ->* . -Integer)] +[arithmetic-shift (cl->* (-Nat -Nat . -> . -Nat) + (-Integer -Integer . -> . -Integer))] +[bitwise-and (cl->* (null -Nat . ->* . -Nat) + (null -Integer . ->* . -Integer))] +[bitwise-ior (cl->* (null -Nat . ->* . -Nat) + (null -Integer . ->* . -Integer))] +[bitwise-not (cl->* (null -Nat . ->* . -Nat) + (null -Integer . ->* . -Integer))] +[bitwise-xor (cl->* (null -Nat . ->* . -Nat) + (null -Integer . ->* . -Integer))] -[abs (-Real . -> . -Real)] +[abs (cl->* (-Integer . -> . -Nat) + (-Real . -> . -Real))] [file-exists? (-Pathlike . -> . B)] [string->symbol (-String . -> . Sym)]