diff options
author | Robin Templeton <robin@terpri.org> | 2014-06-14 03:33:22 -0400 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2016-03-25 12:00:10 -0700 |
commit | 4a14b7f7d86fc9ac29e214c47c934a106749d2ac (patch) | |
tree | b9c7c19e8825337a38aafdd9b0baf3681d67c666 | |
parent | d3dabad7e921351a378d7fb2904805b6c80f9f25 (diff) | |
download | guile-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.scm | 3 |
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)) |