summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Templeton <robin@terpri.org>2014-06-14 03:33:22 -0400
committerChristopher Allan Webber <cwebber@dustycloud.org>2016-03-25 12:00:10 -0700
commit4a14b7f7d86fc9ac29e214c47c934a106749d2ac (patch)
treeb9c7c19e8825337a38aafdd9b0baf3681d67c666
parentd3dabad7e921351a378d7fb2904805b6c80f9f25 (diff)
downloadguile-4a14b7f7d86fc9ac29e214c47c934a106749d2ac.tar.gz
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.
-rw-r--r--module/language/cps/types.scm3
1 files changed, 1 insertions, 2 deletions
diff --git a/module/language/cps/types.scm b/module/language/cps/types.scm
index 4cfc71fd6..7a117f2de 100644
--- a/module/language/cps/types.scm
+++ b/module/language/cps/types.scm
@@ -348,8 +348,7 @@ minimum, and maximum."
((bitvector? val) (return &bitvector (bitvector-length val)))
((array? val) (return &array (array-rank val)))
((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))