[plt-scheme] Compiler error: "not currently transforming module provides"

From: Dave Gurnell (d.j.gurnell at gmail.com)
Date: Thu May 13 03:49:57 EDT 2010

Hi all,

Sometimes, when compiling an application, I'll get the following error message form mzc:

syntax-local-module-required-identifiers: not currently transforming module provides

 === context ===
/usr/local/plt- expand-export
/usr/local/plt- transform-simple
/usr/local/plt- compile-zo
/usr/local/plt- do-check
/usr/local/plt- loop
/usr/local/plt- do-check
/usr/local/plt- loop
/usr/local/plt- do-check
/usr/local/plt- loop

This has been bugging me for quite a while - I have so far struggled to get a small (or even medium sized) reproducible test case. At the moment I'm curious whether anyone else has seen this, whether it is a known or fixed issue, and/or whether I'm doing something dumb.

Here are the symptoms I've managed to pull together so far:

- It happens when compiling files that have a (provide ...) statement with multiple arguments,
   where some of those arguments are (all-from-out ...) forms. For example:

(provide (all-from-out "a.ss" "b.ss"))


(provide (all-from-out "a.ss") (all-from-out "b.ss"))

- Separating the all-from-out forms into separate provide forms fixes the problem:

(provide (all-from-out "a.ss"))
(provide (all-from-out "b.ss"))

- The problem is not always reproducible - sometimes the application compiles all the way through without problems.

- Once the problem has happened once, repeated invocations of "mzc main.ss" typically do not clear up the problem.

- Before I worked out the thing about the provide statements, I tried working around the problem 
   by haphazardly running mzc on different modules in the application. This occasionally worked, but often failed.

- The problem occurs on mzc and - I haven't ventured further forth than that yet.

Best regards,

-- Dave
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20100513/cd8cb63d/attachment.html>

Posted on the users mailing list.