From b7567177ef6cb21d81a99ef57eca2da7d7a773a8 Mon Sep 17 00:00:00 2001 From: Robin Templeton Date: Sat, 14 Jun 2014 03:33:22 -0400 Subject: allow arbitrary constants in cps (Best-ability ChangeLog annotation added by Christopher Allan Webber.) * module/language/cps/types.scm (constant-type): No longer error if type not determined. Return &all-types instead. --- module/language/cps/types.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/module/language/cps/types.scm b/module/language/cps/types.scm index 61de971fe..9073276ea 100644 --- a/module/language/cps/types.scm +++ b/module/language/cps/types.scm @@ -351,8 +351,7 @@ minimum, and maximum." ((array? val) (return &array (array-rank val))) ((syntax? val) (return &syntax 0)) ((not (variable-bound? (make-variable val))) (return &unbound #f)) - - (else (error "unhandled constant" val)))) + (else (return &all-types #f)))) (define *type-checkers* (make-hash-table)) (define *type-inferrers* (make-hash-table)) -- cgit v1.2.3