[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

mzc intermediate files



With the current mzc 199.18, I get the following error for
mzc --save-temps -v p.scm:
 Reading...  expanding...
 [?,?]: Error: Error during elaboration: car: expects argument of type <pair>; given ()
Errors encountered.  Compilation aborted.

I realized that the compiler has generated a file /tmp/l.ss
with exactly one function from the middle of the source file (which runs
fine in the interpreter).

Can I use this file l.ss to locate the error (in my program)?

Ciao
Sven
--
/tmp/l.ss:
(define-values
  (read-formcache)
  (lambda (filename)
    (if (#%app (#%top . null?) (#%top . *formcache))
      (let-values
        (((definitions)
          (#%app
           (#%top . call-with-input-file)
           filename
           (#%top . read-terms))))
        (if definitions
          (let-values
            (((formcache)
              (#%app
               (#%top . append)
               (#%app (#%top . map-if) (#%top . extend-form) definitions)
               (#%app
                (#%top . call-with-input-file)
                (#%datum . "gforms")
                (#%top . read-terms)))))
            (set! formcache
              (#%app
               (#%top . list-sort)
               (lambda (a b)
                 (#%app
                  (#%top . string-compare)
                  (#%app (#%top . car) a)
                  (#%app (#%top . car) b)))
               formcache))
            (set! *formcache
              (#%app
               (#%top . list->btree)
               (#%top . string-compare)
               formcache)))
          (#%app
           (#%top . wr)
           (#%datum . "could not be loaded")
           (#%datum . #\newline)))))))