~ chicken-core (chicken-5) fa104a8a22786a46377655cdff3dd474919dddda


commit fa104a8a22786a46377655cdff3dd474919dddda
Author:     Evan Hanson <evhan@foldling.org>
AuthorDate: Sun Jan 3 19:03:15 2016 +1300
Commit:     Evan Hanson <evhan@foldling.org>
CommitDate: Tue Mar 8 22:52:32 2016 +1300

    Explicitly `##core#quote` required library ids in eval.scm
    
    The standard `quote` syntax isn't available in environments that haven't
    imported the "scheme" module.

diff --git a/eval.scm b/eval.scm
index 6a15f57c..e0a53beb 100644
--- a/eval.scm
+++ b/eval.scm
@@ -709,7 +709,7 @@
 			      (compile
 			       (if (null? rs)
 				   '(##core#undefined)
-				   `(##sys#require ,@(map (lambda (x) `',x) rs)) )
+				   `(##sys#require ,@(map (lambda (x) `(##core#quote ,x)) rs)) )
 			       e #f tf cntr se) ) ) ]
 
 			 [(##core#require-extension)
@@ -1285,7 +1285,7 @@
 		(impform
 		 (if comp?
 		     `(##core#declare (uses ,id))
-		     `(##sys#load-library ',id #f) )
+		     `(##sys#load-library (##core#quote ,id) #f))
 		 impid #f)
 		#t id) )
 	      ((memq id ##sys#explicit-library-modules)
@@ -1294,12 +1294,12 @@
 		      (s (and info (assq 'syntax info))))
 		 (values
 		  `(##core#begin
-		    ,@(if s `((##core#require-for-syntax ',id)) '())
+		    ,@(if s `((##core#require-for-syntax (##core#quote ,id))) '())
 		    ,(impform
 		      (if (not nr)
 			  (if comp?
-			      `(##core#declare (uses ,id)) 
-			      `(##sys#load-library ',id #f) )
+			      `(##core#declare (uses ,id))
+			      `(##sys#load-library (##core#quote ,id) #f))
 			  '(##core#undefined))
 		      impid #f))
 		  #t id) ) )
@@ -1313,13 +1313,13 @@
 			  (values 
 			   (impform
 			    `(##core#begin
-			      ,@(if s `((##core#require-for-syntax ',id)) '())
+			      ,@(if s `((##core#require-for-syntax (##core#quote ,id))) '())
 			      ,@(if (or nr (and (not rr) s))
 				    '()
 				    (begin
 				      (add-req id #f)
 				      `((##sys#require
-					 ,@(map (lambda (id) `',id)
+					 ,@(map (lambda (id) `(##core#quote ,id))
 						(cond (rr (cdr rr))
 						      (else (list id)) ) ) ) ) ) ) )
 			    impid #f)
@@ -1328,7 +1328,7 @@
 			(add-req id #f)
 			(values
 			 (impform
-			  `(##sys#require ',id) 
+			  `(##sys#require (##core#quote ,id))
 			  impid #f)
 			 #f id)))))))
       (let loop ((id spec))
Trap