~ chicken-core (chicken-5) 6e3300878df5b7c9f47fbfd91f32036a08920e0f


commit 6e3300878df5b7c9f47fbfd91f32036a08920e0f
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Sun Mar 4 11:53:54 2012 +0100
Commit:     Peter Bex <peter.bex@xs4all.nl>
CommitDate: Sat Mar 17 21:00:30 2012 +0100

    options explicitly given to compile-file override default options
    
    Signed-off-by: Peter Bex <peter.bex@xs4all.nl>

diff --git a/utils.scm b/utils.scm
index 0db5c96e..41934bc5 100644
--- a/utils.scm
+++ b/utils.scm
@@ -83,14 +83,16 @@
   (let ((csc (foreign-value "C_CSC_PROGRAM" c-string))
 	(load-file load)
 	(path (foreign-value "C_INSTALL_BIN_HOME" c-string)) )
-    (lambda (filename #!key (options '()) output-file (load #t) verbose)
+    (lambda (filename #!key options output-file (load #t) verbose)
       (let* ((cscpath (or (file-exists? (make-pathname path csc)) "csc"))
 	     (tmpfile (and (not output-file) (create-temporary-file "so")))
 	     (crapshell (eq? (build-platform) 'mingw32))
 	     (cmd (sprintf "~a~a -s ~a ~a -o ~a~a" 
 		    (if crapshell "\"" "")
 		    (qs cscpath)
-		    (string-intersperse (append (compile-file-options) options) " ")
+		    (string-intersperse
+		     (or options
+			 (compile-file-options)))
 		    (qs filename)
 		    (qs (or output-file tmpfile))
 		    (if crapshell "\"" ""))))
Trap