~ chicken-core (chicken-5) aa95702f937d79f118c23322ee5993ee43aff9a6


commit aa95702f937d79f118c23322ee5993ee43aff9a6
Author:     Evan Hanson <evhan@foldling.org>
AuthorDate: Tue Feb 9 09:26:11 2016 +1300
Commit:     Evan Hanson <evhan@foldling.org>
CommitDate: Tue Mar 8 22:52:35 2016 +1300

    Drop unnecessary "##core#begin" from "##core#require" expansions

diff --git a/core.scm b/core.scm
index 33ebf6a6..90b78c9b 100644
--- a/core.scm
+++ b/core.scm
@@ -685,8 +685,7 @@
 				file-requirements type
 				(cut lset-adjoin/eq? <> id)
 				(cut list id)))
-			     (walk `(##core#begin ,exp (##core#undefined))
-				   e se dest ldest h ln))))
+			     (walk exp e se dest ldest h ln))))
 
 			((##core#let)
 			 (let* ((bindings (cadr x))
diff --git a/eval.scm b/eval.scm
index a86ccf9e..2ba11431 100644
--- a/eval.scm
+++ b/eval.scm
@@ -713,12 +713,10 @@
 			     e #f tf cntr se))]
 
 			 [(##core#require)
-			  (compile
-			   (let ((id         (cadr x))
-				 (alternates (cddr x)))
-			     (let-values (((exp _ _) (##sys#process-require id #f alternates)))
-			       `(##core#begin ,exp (##core#undefined))))
-			   e #f tf cntr se)]
+			  (let ((id         (cadr x))
+				(alternates (cddr x)))
+			    (let-values (((exp _ _) (##sys#process-require id #f alternates)))
+			      (compile exp e #f tf cntr se)))]
 
 			 [(##core#elaborationtimeonly ##core#elaborationtimetoo) ; <- Note this!
 			  (##sys#eval/meta (cadr x))
Trap