GNU bug report logs -
#75504
Crash of type-fold when compiling procedure
Previous Next
To reply to this bug, email your comments to 75504 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guile <at> gnu.org
:
bug#75504
; Package
guile
.
(Sat, 11 Jan 2025 23:44:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Ricardo G. Herdt" <r.herdt <at> posteo.de>
:
New bug report received and forwarded. Copy sent to
bug-guile <at> gnu.org
.
(Sat, 11 Jan 2025 23:44:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi,
There is a weird bug when trying to evaluate/compile following
procedure:
------------------------
$ cat example.scm
(define (test n)
(make-vector n 1)
(floor (sqrt n)))
$ guild compile example.scm
Backtrace:
In /home/rgherdt/.guix-profile/bin/guild:
72:17 19 (main _)
In srfi/srfi-1.scm:
634:9 18 (for-each #<procedure 7fc101fbc230 at scripts/compile.…> …)
In scripts/compile.scm:
279:27 17 (_ _)
In system/base/target.scm:
72:6 16 (with-target _ _)
In system/base/compile.scm:
187:6 15 (compile-file "example.scm" #:output-file _ #:from _ # _ …)
53:4 14 (call-with-output-file/atomic _ _ _)
In ice-9/boot-9.scm:
1752:10 13 (with-exception-handler _ _ #:unwind? _ # _)
In system/base/compile.scm:
69:11 12 (_)
190:11 11 (_ #<closed: file 7fc101f95e00>)
314:15 10 (read-and-compile _ #:from _ #:to _ #:env _ # _ # _ # _)
352:28 9 (compile _ #:from _ #:to _ #:env _ #:optimization-level …)
265:44 8 (_ _ _)
261:33 7 (_ #<intmap 0-41> #<module (#{ g106}#) 7fc1020f2460>)
In language/cps/optimize.scm:
130:12 6 (_ _ _)
102:3 5 (optimize-higher-order-cps _ _)
In language/cps/type-fold.scm:
778:7 4 (type-fold _)
771:27 3 (fold-functions-in-renumbered-program #<procedure loca…> …)
611:10 2 (local-type-fold _ 30 _)
48:4 1 (materialize-constant _ _ _ _ _)
In ice-9/boot-9.scm:
1685:16 0 (raise-exception _ #:continuable? _)
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
In procedure =: Wrong type argument in position 1: #<unspecified>
------------------------
Somehow the type passed to materialize-constant is #<unspecified>,
leading to the crash when checking "(zero? type)". Swapping the
procedures like this doesn't lead to the same error:
(define (test n)
(make-vector n 1)
(sqrt (floor n)))
Thanks to gsdlb for discovering the bug and mwette for helping getting a
better backtrace.
Tested with Guile 3.0.9.
Regards,
Ricardo G. Herdt
This bug report was last modified 164 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.