fix dumping of #:keywords
authorAndy Wingo <wingo@pobox.com>
Thu, 15 May 2008 10:20:18 +0000 (12:20 +0200)
committerAndy Wingo <wingo@pobox.com>
Thu, 15 May 2008 10:20:18 +0000 (12:20 +0200)
* module/language/scheme/translate.scm (trans):
* module/system/il/compile.scm (codegen): When making records where a
  value can be a keyword, make sure to use the keyword initialization
  form, so that the record initializer doesn't interpret the keyword as a
  slot name.

* module/system/base/Makefile.am (vm_DATA): For now, don't compile
  pmatch.

module/language/scheme/translate.scm
module/system/base/Makefile.am
module/system/il/compile.scm

index 11a9f9e..05a2e8a 100644 (file)
@@ -90,7 +90,7 @@
 
         ;; fixme: non-self-quoting objects like #<foo>
        (else
-         (make-ghil-quote e l x))))
+         (make-ghil-quote e l #:obj x))))
 
 (define (valid-bindings? bindings . it-is-for-do)
   (define (valid-binding? b)
index 97e51e8..eeff192 100644 (file)
@@ -1,8 +1,10 @@
-SOURCES = syntax.scm compile.scm language.scm pmatch.scm
+SOURCES = syntax.scm compile.scm language.scm
+# we don't deal well with syncase yet
+NOCOMP_SOURCES = pmatch.scm
 GOBJECTS = $(SOURCES:%.scm=%.go)
 
 vmdir = $(guiledir)/system/vm
-vm_DATA = $(SOURCES) $(GOBJECTS)
+vm_DATA = $(SOURCES) $(NOCOMP_SOURCES) $(GOBJECTS)
 
 CLEANFILES = $(GOBJECTS)
 
index 691731b..db22124 100644 (file)
        (return-code! *ia-void*))
       ;; return object if necessary
       (define (return-object! obj)
-       (return-code! (make-glil-const obj)))
+       (return-code! (make-glil-const #:obj obj)))
       ;;
       ;; dispatch
       (record-case tree
                (comp-push exp)
                (push-call! #f 'list-break '()))))
             (else
-             (push-code! (make-glil-const x)))))
+             (push-code! (make-glil-const #:obj x)))))
         (maybe-drop)
         (maybe-return))