From unknown Thu Sep 11 20:48:52 2025 X-Loop: help-debbugs@gnu.org Subject: bug#49404: Cross module inlining causes unbound make-struct/no-tail ref Resent-From: Rob Browning Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Sun, 04 Jul 2021 18:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 49404 X-GNU-PR-Package: guile X-GNU-PR-Keywords: To: 49404@debbugs.gnu.org X-Debbugs-Original-To: bug-guile@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.162542348332603 (code B ref -1); Sun, 04 Jul 2021 18:32:01 +0000 Received: (at submit) by debbugs.gnu.org; 4 Jul 2021 18:31:23 +0000 Received: from localhost ([127.0.0.1]:43248 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m06tn-0008Tn-Av for submit@debbugs.gnu.org; Sun, 04 Jul 2021 14:31:23 -0400 Received: from lists.gnu.org ([209.51.188.17]:39274) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m06tk-0008Te-7W for submit@debbugs.gnu.org; Sun, 04 Jul 2021 14:31:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35628) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m06tj-0007u6-U0 for bug-guile@gnu.org; Sun, 04 Jul 2021 14:31:19 -0400 Received: from defaultvalue.org ([45.33.119.55]:44342) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m06th-00026e-U8 for bug-guile@gnu.org; Sun, 04 Jul 2021 14:31:19 -0400 Received: from trouble.defaultvalue.org (localhost [127.0.0.1]) (Authenticated sender: rlb@defaultvalue.org) by defaultvalue.org (Postfix) with ESMTPSA id A218320476 for ; Sun, 4 Jul 2021 13:31:15 -0500 (CDT) Received: by trouble.defaultvalue.org (Postfix, from userid 1000) id 2205514E48D; Sun, 4 Jul 2021 13:31:15 -0500 (CDT) From: Rob Browning Date: Sun, 04 Jul 2021 13:31:15 -0500 Message-ID: <877di6c4ng.fsf@trouble.defaultvalue.org> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=45.33.119.55; envelope-from=rlb@defaultvalue.org; helo=defaultvalue.org X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) 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 _ _ #< effort: # ?) 338:20 18 (visit-operand #< var: #< name: recur ge?> ?) 799:6 17 (loop # ?) 1690:20 16 (loop _ # #< eff?> ?) 981:20 15 (loop _ # #< eff?> ?) 981:20 14 (loop _ # #< eff?> ?) 799:6 13 (loop _ # #< eff?> ?) 799:6 12 (loop _ # #< eff?> ?) 799:6 11 (loop _ # #< eff?> ?) 1659:48 10 (loop _ _ _ test) In srfi/srfi-1.scm: 586:29 9 (map1 (# #)) 586:17 8 (map1 (#)) In language/tree-il/peval.scm: 1659:48 7 (loop _ _ _ value) In srfi/srfi-1.scm: 586:17 6 (map1 (# ?)) In language/tree-il/peval.scm: 1075:14 5 (loop # ?) 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 From unknown Thu Sep 11 20:48:52 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Rob Browning Subject: bug#49404: closed (Re: bug#49404: Cross module inlining causes unbound make-struct/no-tail ref) Message-ID: References: <87a5bv995v.fsf@trouble.defaultvalue.org> <877di6c4ng.fsf@trouble.defaultvalue.org> X-Gnu-PR-Message: they-closed 49404 X-Gnu-PR-Package: guile Reply-To: 49404@debbugs.gnu.org Date: Sun, 12 Jan 2025 18:31:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1736706662-28207-1" This is a multi-part message in MIME format... ------------=_1736706662-28207-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" 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@debbugs.gnu.org. --=20 49404: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D49404 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1736706662-28207-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 49404-done) by debbugs.gnu.org; 12 Jan 2025 18:30:56 +0000 Received: from localhost ([127.0.0.1]:49062 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tX2jg-0007Kf-4p for submit@debbugs.gnu.org; Sun, 12 Jan 2025 13:30:56 -0500 Received: from defaultvalue.org ([45.33.119.55]:52880) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tX2jd-0007KW-TI for 49404-done@debbugs.gnu.org; Sun, 12 Jan 2025 13:30:54 -0500 Received: from trouble.defaultvalue.org (localhost [127.0.0.1]) (Authenticated sender: rlb@defaultvalue.org) by defaultvalue.org (Postfix) with ESMTPSA id AD52F200CC for <49404-done@debbugs.gnu.org>; Sun, 12 Jan 2025 12:30:52 -0600 (CST) Received: by trouble.defaultvalue.org (Postfix, from userid 1000) id 31A5114E066; Sun, 12 Jan 2025 12:30:52 -0600 (CST) From: Rob Browning To: 49404-done@debbugs.gnu.org Subject: Re: bug#49404: Cross module inlining causes unbound make-struct/no-tail ref In-Reply-To: <877di6c4ng.fsf@trouble.defaultvalue.org> (Rob Browning's message of "Sun, 04 Jul 2021 13:31:15 -0500") References: <877di6c4ng.fsf@trouble.defaultvalue.org> Date: Sun, 12 Jan 2025 12:30:52 -0600 Message-ID: <87a5bv995v.fsf@trouble.defaultvalue.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 49404-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Rob Browning 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 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 ------------=_1736706662-28207-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 4 Jul 2021 18:31:23 +0000 Received: from localhost ([127.0.0.1]:43248 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m06tn-0008Tn-Av for submit@debbugs.gnu.org; Sun, 04 Jul 2021 14:31:23 -0400 Received: from lists.gnu.org ([209.51.188.17]:39274) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m06tk-0008Te-7W for submit@debbugs.gnu.org; Sun, 04 Jul 2021 14:31:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35628) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m06tj-0007u6-U0 for bug-guile@gnu.org; Sun, 04 Jul 2021 14:31:19 -0400 Received: from defaultvalue.org ([45.33.119.55]:44342) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m06th-00026e-U8 for bug-guile@gnu.org; Sun, 04 Jul 2021 14:31:19 -0400 Received: from trouble.defaultvalue.org (localhost [127.0.0.1]) (Authenticated sender: rlb@defaultvalue.org) by defaultvalue.org (Postfix) with ESMTPSA id A218320476 for ; Sun, 4 Jul 2021 13:31:15 -0500 (CDT) Received: by trouble.defaultvalue.org (Postfix, from userid 1000) id 2205514E48D; Sun, 4 Jul 2021 13:31:15 -0500 (CDT) From: Rob Browning To: bug-guile@gnu.org Subject: Cross module inlining causes unbound make-struct/no-tail ref Date: Sun, 04 Jul 2021 13:31:15 -0500 Message-ID: <877di6c4ng.fsf@trouble.defaultvalue.org> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=45.33.119.55; envelope-from=rlb@defaultvalue.org; helo=defaultvalue.org X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) 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 _ _ #< effort: # ?) 338:20 18 (visit-operand #< var: #< name: recur ge?> ?) 799:6 17 (loop # ?) 1690:20 16 (loop _ # #< eff?> ?) 981:20 15 (loop _ # #< eff?> ?) 981:20 14 (loop _ # #< eff?> ?) 799:6 13 (loop _ # #< eff?> ?) 799:6 12 (loop _ # #< eff?> ?) 799:6 11 (loop _ # #< eff?> ?) 1659:48 10 (loop _ _ _ test) In srfi/srfi-1.scm: 586:29 9 (map1 (# #)) 586:17 8 (map1 (#)) In language/tree-il/peval.scm: 1659:48 7 (loop _ _ _ value) In srfi/srfi-1.scm: 586:17 6 (map1 (# ?)) In language/tree-il/peval.scm: 1075:14 5 (loop # ?) 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 ------------=_1736706662-28207-1--