~ chicken-core (chicken-5) f36539a31612ad16494e6d17601478bc2e59c3f5
commit f36539a31612ad16494e6d17601478bc2e59c3f5 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Fri Mar 26 09:42:36 2010 +0100 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Fri Mar 26 09:42:36 2010 +0100 added -:G runtime option; added feature id #:explicit-renaming diff --git a/expand.scm b/expand.scm index 0bd146bd..24d0f678 100644 --- a/expand.scm +++ b/expand.scm @@ -38,7 +38,7 @@ (set! ##sys#features - (append '(#:hygienic-macros #:syntax-rules) ##sys#features)) + (append '(#:hygienic-macros #:syntax-rules #:explicit-renaming) ##sys#features)) (define (d arg1 . more) (when (##sys#fudge 13) @@ -48,7 +48,7 @@ (define dd d) (define dm d) -(define dc d) +(define dx d) (cond-expand ((not debugbuild) @@ -60,7 +60,7 @@ (begin (define-syntax dd (syntax-rules () ((_ . _) (void)))) (define-syntax dm (syntax-rules () ((_ . _) (void)))) - (define-syntax dc (syntax-rules () ((_ . _) (void)))) ) + (define-syntax dx (syntax-rules () ((_ . _) (void)))) ) ;;; Syntactic environments @@ -212,12 +212,12 @@ "syntax transformer for `" (symbol->string name) "' returns original form, which would result in endless expansion") exp)) - (dd `(,name --> ,exp2)) + (dx `(,name --> ,exp2)) exp2))) (define (expand head exp mdef) (dd `(EXPAND: ,head - ,(cond ((get head '##core#macro-alias) => + ,(cond ((##sys#get head '##core#macro-alias) => (lambda (a) (if (symbol? a) a '<macro>)) ) (else '_)) ,exp @@ -228,7 +228,7 @@ (##sys#syntax-error-hook "invalid syntax in macro form" exp) ) ((pair? mdef) (values - ;; force ref. opaqueness by passing dynamic se [what is this comment meaning? I forgot] + ;; force ref. opaqueness by passing dynamic se [what does this comment mean? I forgot ...] (call-handler head (cadr mdef) exp (car mdef) #f) #t)) (else (values exp #f)) ) ) diff --git a/manual/Using the compiler b/manual/Using the compiler index aaff7eb0..97f662d8 100644 --- a/manual/Using the compiler +++ b/manual/Using the compiler @@ -240,6 +240,8 @@ compiler itself) accept a small set of runtime options: ; {{-:g}} : Prints information about garbage-collection. +; {{-:G}} : Force GUI mode (show error messages in dialog box, suitable for platform). + ; {{-:fNUMBER}} : Specifies the maximal number of currently pending finalizers before finalization is forced. ; {{-:hNUMBER}} : Specifies fixed heap size diff --git a/runtime.c b/runtime.c index 13e1f500..fd0e07e1 100644 --- a/runtime.c +++ b/runtime.c @@ -1147,6 +1147,7 @@ void CHICKEN_parse_command_line(int argc, char *argv[], C_word *heap, C_word *st " -:x deliver uncaught exceptions of other threads to primordial one\n" " -:b enter REPL on error\n" " -:B sound bell on major GC\n" + " -:G force GUI mode\n" " -:aSIZE set trace-buffer/call-chain size\n" "\n SIZE may have a `k' (`K'), `m' (`M') or `g' (`G') suffix, meaning size\n" " times 1024, 1048576, and 1073741824, respectively.\n\n"); @@ -1182,6 +1183,9 @@ void CHICKEN_parse_command_line(int argc, char *argv[], C_word *heap, C_word *st gc_bell = 1; break; + case 'G': + C_gui_mode = 1; + case 's': *stack = arg_val(ptr); stack_size_changed = 1;Trap