diff options
author | Andy Wingo <wingo@pobox.com> | 2011-11-04 13:38:28 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-11-04 14:12:25 +0100 |
commit | ef9ffe5efd341af085e9dcd5a00288a6d33e99f7 (patch) | |
tree | 9d6953fa182bb629caf0071b9690eec22bbb7bcf /module/language/tree-il | |
parent | 14b208185cfe8811ac46f11bc69ec62eecdcb623 (diff) | |
download | guile-ef9ffe5efd341af085e9dcd5a00288a6d33e99f7.tar.gz |
peval doesn't resolve primitives
* module/language/tree-il/peval.scm (peval): Don't resolve primitives,
as resolve-primitives! handles that already.
* test-suite/tests/tree-il.test (pass-if-peval): Always resolve and
expand primitives.
("partial evaluation"): Update tests to assume expanded primitives.
Diffstat (limited to 'module/language/tree-il')
-rw-r--r-- | module/language/tree-il/peval.scm | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/module/language/tree-il/peval.scm b/module/language/tree-il/peval.scm index fd3526ccf..f7733a5f1 100644 --- a/module/language/tree-il/peval.scm +++ b/module/language/tree-il/peval.scm @@ -868,12 +868,7 @@ top-level bindings from ENV and return the resulting expression." (($ <dynset> src fluid exp) (make-dynset src (for-value fluid) (for-value exp))) (($ <toplevel-ref> src (? effect-free-primitive? name)) - (if (local-toplevel? name) - exp - (let ((exp (resolve-primitives! exp cenv))) - (if (primitive-ref? exp) - (for-tail exp) - exp)))) + exp) (($ <toplevel-ref>) ;; todo: open private local bindings. exp) |