more cptypes
original commit: e04430806fc16e411dae8f8c9288f56e6e55a426
This commit is contained in:
parent
6ff9e9ecd5
commit
ecc310106d
|
@ -212,6 +212,10 @@
|
||||||
(if (eq? (subset-mode) 'system)
|
(if (eq? (subset-mode) 'system)
|
||||||
($system-environment)
|
($system-environment)
|
||||||
(interaction-environment)))
|
(interaction-environment)))
|
||||||
|
(define (cptypes x)
|
||||||
|
(if (enable-type-recovery)
|
||||||
|
($cptypes x)
|
||||||
|
x))
|
||||||
(define e/o
|
(define e/o
|
||||||
(lambda (who cte? x env)
|
(lambda (who cte? x env)
|
||||||
(define (go x)
|
(define (go x)
|
||||||
|
@ -222,9 +226,9 @@
|
||||||
(let ([x ((run-cp0)
|
(let ([x ((run-cp0)
|
||||||
(lambda (x)
|
(lambda (x)
|
||||||
(set! cpletrec-ran? #t)
|
(set! cpletrec-ran? #t)
|
||||||
($cpletrec ($cptypes ($cp0 x $compiler-is-loaded?))))
|
($cpletrec (cptypes ($cp0 x $compiler-is-loaded?))))
|
||||||
($cpvalid x))])
|
($cpvalid x))])
|
||||||
(if cpletrec-ran? x ($cpletrec x))))))))
|
(if cpletrec-ran? x ($cpletrec (cptypes x)))))))))
|
||||||
(unless (environment? env)
|
(unless (environment? env)
|
||||||
($oops who "~s is not an environment" env))
|
($oops who "~s is not an environment" env))
|
||||||
; claim compiling-a-file to get cte as well as run-time code
|
; claim compiling-a-file to get cte as well as run-time code
|
||||||
|
|
|
@ -645,6 +645,11 @@
|
||||||
(c-var-index-set! (car vars) i)
|
(c-var-index-set! (car vars) i)
|
||||||
(loop (cdr vars) regs (fx+ i 1))])))))
|
(loop (cdr vars) regs (fx+ i 1))])))))
|
||||||
|
|
||||||
|
(define (cptypes x)
|
||||||
|
(if (enable-type-recovery)
|
||||||
|
($cptypes x))
|
||||||
|
x)
|
||||||
|
|
||||||
(define-pass interpret-Lexpand : Lexpand (ir situation for-import? ofn eoo) -> * (val)
|
(define-pass interpret-Lexpand : Lexpand (ir situation for-import? ofn eoo) -> * (val)
|
||||||
(definitions
|
(definitions
|
||||||
(define (ibeval x1)
|
(define (ibeval x1)
|
||||||
|
@ -654,9 +659,9 @@
|
||||||
(let ([x ((run-cp0)
|
(let ([x ((run-cp0)
|
||||||
(lambda (x)
|
(lambda (x)
|
||||||
(set! cpletrec-ran? #t)
|
(set! cpletrec-ran? #t)
|
||||||
($cpletrec ($cptypes ($cp0 x #f))))
|
($cpletrec (cptypes ($cp0 x #f))))
|
||||||
x2)])
|
x2)])
|
||||||
(if cpletrec-ran? x ($cpletrec x))))]
|
(if cpletrec-ran? x ($cpletrec (cptypes x)))))]
|
||||||
[x2b ($cpcheck x2a)]
|
[x2b ($cpcheck x2a)]
|
||||||
[x2b ($cpcommonize x2b)])
|
[x2b ($cpcommonize x2b)])
|
||||||
(when eoo (pretty-print ($uncprep x2b) eoo))
|
(when eoo (pretty-print ($uncprep x2b) eoo))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user