~ chicken-core (chicken-5) 647d33ddf5e949080cee9b5e2c910dfed277c92c
commit 647d33ddf5e949080cee9b5e2c910dfed277c92c Author: Evan Hanson <evhan@foldling.org> AuthorDate: Fri Feb 5 19:31:32 2016 +1300 Commit: Evan Hanson <evhan@foldling.org> CommitDate: Tue Mar 8 22:52:35 2016 +1300 Handle "-uses" flags before "-R" so units are called first diff --git a/batch-driver.scm b/batch-driver.scm index 62390bb1..7d885b63 100644 --- a/batch-driver.scm +++ b/batch-driver.scm @@ -451,13 +451,6 @@ (set! ##sys#features (cons '#:compiling ##sys#features)) (set! upap (user-post-analysis-pass)) - ;; Append required extensions to initforms: - (set! initforms - (append - initforms - (map (lambda (r) `(import ,(string->symbol r))) - (collect-options 'require-extension)))) - ;; Handle units added with the "-uses" flag. (let ((uses (append-map (lambda (u) (map string->symbol (string-split u ", "))) @@ -466,6 +459,13 @@ (set! forms (cons `(##core#declare (uses . ,uses)) forms)))) + ;; Append required extensions to initforms: + (set! initforms + (append + initforms + (map (lambda (r) `(import ,(string->symbol r))) + (collect-options 'require-extension)))) + (when (memq 'compile-syntax options) (set! ##sys#enable-runtime-macros #t) ) (set! target-heap-sizeTrap