From: Christophe R. <cr...@us...> - 2004-08-23 22:54:41
|
Update of /cvsroot/sbcl/sbcl/src/compiler/generic In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8932/src/compiler/generic Modified Files: Tag: character_branch primtype.lisp Log Message: 0.8.13.77.character.2: "Pull your socks up" Zeroth draft of teaching the type system about character sets: implement CHARACTER subtypes as CHARACTER-RANGE. ... builds, passes all tests, builds all contribs; ... zeroth draft because it makes types such as (member #\a #\c #\e) unparse uglily. Probably I actually want a CHARACTER-SET representation Index: primtype.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/generic/primtype.lisp,v retrieving revision 1.14.2.1 retrieving revision 1.14.2.2 diff -u -d -r1.14.2.1 -r1.14.2.2 --- primtype.lisp 23 Aug 2004 16:26:19 -0000 1.14.2.1 +++ primtype.lisp 23 Aug 2004 22:54:26 -0000 1.14.2.2 @@ -304,6 +304,8 @@ (ecase (named-type-name type) ((t *) (values *backend-t-primitive-type* t)) ((nil) (any)))) + (character-range-type + (exactly character)) (built-in-classoid (case (classoid-name type) ((complex function instance @@ -311,6 +313,7 @@ (values (primitive-type-or-lose (classoid-name type)) t)) (funcallable-instance (part-of function)) + #+nil (character (exactly character)) (cons-type |