Hi! This morning I found another bug while porting Mes to Guile-3. It looks similar to #43831; compilation with -O2 shows wrong behaviour.
Also, this works on Guile-2.2.
To reproduce:
--8<---------------cut here---------------start------------->8---
14:02:54 janneke@dundal:~/tmp/bug2 [env]
$ guile --no-auto-compile -L . script.scm
dumping0: foo
14:03:06 janneke@dundal:~/tmp/bug2 [env]
$ guild compile -O1 -o mescc.go mescc.scm
wrote `mescc.go'
14:03:33 janneke@dundal:~/tmp/bug2 [env]
$ guile --no-auto-compile -L . -C . script.scm
dumping0: foo
14:03:42 janneke@dundal:~/tmp/bug2 [env]
$ guild compile -O2 -o mescc.go mescc.scm
wrote `mescc.go'
14:03:49 janneke@dundal:~/tmp/bug2 [env]
$ guile --no-auto-compile -L . -C . script.scm
dumping0: foo
Backtrace:
1 (primitive-load "/home/janneke/tmp/bug2/script.scm")
In mescc.scm:
27:4 0 (with-output-to-file _ #<procedure 7f5effc15388 at mescc.scm:35:6
_>)
mescc.scm:27:4: In procedure with-output-to-file:
Throw to key `looping' with args `()'.
[1]14:03:52 janneke@dundal:~/tmp/bug2 [env]
$
--8<---------------cut here---------------end--------------->8---
Greetings,
Janneke
script.scm
Description: Binary data
mescc.scm
Description: Binary data
-- Jan Nieuwenhuizen <[email protected]> | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | AvatarĀ® http://AvatarAcademy.com
