GNU bug report logs -
#49404
Cross module inlining causes unbound make-struct/no-tail ref
Previous Next
Reported by: Rob Browning <rlb <at> defaultvalue.org>
Date: Sun, 4 Jul 2021 18:32:01 UTC
Severity: normal
Done: Rob Browning <rlb <at> defaultvalue.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#49404: Cross module inlining causes unbound make-struct/no-tail ref
which was filed against the guile package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 49404 <at> debbugs.gnu.org.
--
49404: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49404
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Rob Browning <rlb <at> defaultvalue.org> writes:
> This commit casuses lokke's compilation to fail:
>
> commit fd5cb457fb3a450b4b14eb89c8dbd764ba8df52e
> Date: Mon Apr 5 20:58:03 2021 +0200
>
> Implement cross-module inlining
>
> * module/language/tree-il/optimize.scm (make-optimizer): Pass
> cross-module-inlining? to peval.
> * module/language/tree-il/peval.scm (peval): Add cross-module-inlining?
> kwarg. Try to inline public module-ref.
>
> The failure looks like this (after applying the patch mentioned in
> https://debbugs.gnu.org/49305 so we can get past the #nil issue):
[...]
> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> Unbound variable: make-struct/no-tail
I suspect this has been fixedq and I can no longer reproduce it --
though I'm not certain lokke didn't also change in some relevant way.
In any case, I'll close it for now and we can re-open it if necessary.
I also suspect this may have been related:
commit d01ab7bf5cb97264b48bec96469360f1901d1a35
Author: Andy Wingo <wingo <at> pobox.com>
Date: Mon Jan 17 21:07:22 2022 +0100
Fix inlinable-exports bug for pure modules
* module/language/tree-il/inlinable-exports.scm (compute-decoder): Fix
bug in which inlinable exports in a pure module would have a missing
make-struct/no-tail binding.
Thanks
--
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
[Message part 3 (message/rfc822, inline)]
This commit casuses lokke's compilation to fail:
commit fd5cb457fb3a450b4b14eb89c8dbd764ba8df52e
Date: Mon Apr 5 20:58:03 2021 +0200
Implement cross-module inlining
* module/language/tree-il/optimize.scm (make-optimizer): Pass
cross-module-inlining? to peval.
* module/language/tree-il/peval.scm (peval): Add cross-module-inlining?
kwarg. Try to inline public module-ref.
The failure looks like this (after applying the patch mentioned in
https://debbugs.gnu.org/49305 so we can get past the #nil issue):
GUILE=/home/rlb/src/lokke/main/guile \
GUILE_AUTO_COMPILE=0 \
/home/rlb/opt/guile-3.0-main/bin/guild-3.0 compile \
-Wunbound-variable -Wmacro-use-before-definition \
-Warity-mismatch -Wformat \
--from=lokke -o mod/lokke/ns/lokke/deps.go mod/lokke/ns/lokke/deps.clj
Backtrace:
In language/tree-il/peval.scm:
853:11 19 (loop _ _ #<<counter> effort: #<variable 7fe52f017730 ?> ?)
338:20 18 (visit-operand #<<operand> var: #<<var> name: recur ge?> ?)
799:6 17 (loop #<tree-il (lambda ((name . recur)) (lambda-case ?> ?)
1690:20 16 (loop _ #<vhash 7fe52ca56ba0 34 pairs> #<<counter> eff?> ?)
981:20 15 (loop _ #<vhash 7fe52ca56ac0 36 pairs> #<<counter> eff?> ?)
981:20 14 (loop _ #<vhash 7fe52ca569c0 38 pairs> #<<counter> eff?> ?)
799:6 13 (loop _ #<vhash 7fe52ca56900 40 pairs> #<<counter> eff?> ?)
799:6 12 (loop _ #<vhash 7fe52ca56900 40 pairs> #<<counter> eff?> ?)
799:6 11 (loop _ #<vhash 7fe52ca56900 40 pairs> #<<counter> eff?> ?)
1659:48 10 (loop _ _ _ test)
In srfi/srfi-1.scm:
586:29 9 (map1 (#<tree-il (primitive not)> #<tree-il (call (@ ?>))
586:17 8 (map1 (#<tree-il (call (@ (lokke base invoke) invoke) ?>))
In language/tree-il/peval.scm:
1659:48 7 (loop _ _ _ value)
In srfi/srfi-1.scm:
586:17 6 (map1 (#<tree-il (@ (lokke ns clojure string) starts?> ?))
In language/tree-il/peval.scm:
1075:14 5 (loop #<tree-il (@ (lokke ns clojure string) starts-wi?> ?)
In lokke/ns/clojure/string.scm:
108:0 4 (lp)
108:0 3 (lp)
108:0 2 (lp)
108:0 1 (lp)
In ice-9/boot-9.scm:
1685:16 0 (raise-exception _ #:continuable? _)
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Unbound variable: make-struct/no-tail
Please let me know if I can help with further diagnosis.
Thanks
--
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
This bug report was last modified 213 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.