Hi! Using the attached foo.scm and bar.scm, Guile 2.2 nicely redefines %foo and %baz: --8<---------------cut here---------------start------------->8--- $ guild compile -L . -o foo.go foo.scm wrote `foo.go' 17:48:10 janneke@dundal:~/src/guile/master [env] $ guild compile -L . -o bar.go bar.scm wrote `bar.go' 17:48:12 janneke@dundal:~/src/guile/master [env] $ guile -C . -c '(use-modules (bar))' foo: "foo" baz: "baz" 17:48:16 janneke@dundal:~/src/guile/master [env] $ guile -C . -c '(use-modules (bar))' foo: "foo" baz: "baz" --8<---------------cut here---------------end--------------->8--- Guile-3.0 sets %foo to *unspecified*: --8<---------------cut here---------------start------------->8--- $ meta/build-env meta/guild compile -L . -o foo.go foo.scm wrote `foo.go' 17:50:03 janneke@dundal:~/src/guile/master [env] $ meta/build-env guild compile -L . -o bar.go bar.scm wrote `bar.go' 17:50:10 janneke@dundal:~/src/guile/master [env] $ meta/build-env meta/guile -C . -c '(use-modules (bar))' foo: # baz: "baz" --8<---------------cut here---------------end--------------->8--- Greetings, Janneke