From 16c586f0531ccdc35d8e302a18794dc349deaf51 Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Thu, 10 Nov 2011 05:18:18 +0900 Subject: [PATCH] Handling Lit values in inference. --- lib/chibi/type-inference.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/chibi/type-inference.scm b/lib/chibi/type-inference.scm index bfeb7a25..986d45c5 100644 --- a/lib/chibi/type-inference.scm +++ b/lib/chibi/type-inference.scm @@ -166,13 +166,15 @@ f-type) (else Object)))))) + (($ Lit value) + (type-of value)) (else (type-of x)))) (define (resolve-delayed-type x) (let lp ((x x) (seen '()) (default Object)) (match x - (('return-type f) + (('return-type (? lambda? f)) (if (memq f seen) default (lp (lambda-return-type f) (cons f seen) default)))