bug#43845: toplevel definition in module: another compiler optimization bug

Jan Nieuwenhuizen <[email protected]>
Newsgroups gmane.lisp.guile.bugs
Organization AvatarAcademy.nl
Message-ID <[email protected]>
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


-- 
Jan Nieuwenhuizen <[email protected]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com
script.scm (application/octet-stream, 853 B) - not displayed
mescc.scm (application/octet-stream, 1.3 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.