From debbugs-submit-bounces@debbugs.gnu.org Sun Mar 20 11:11:20 2022 Received: (at submit) by debbugs.gnu.org; 20 Mar 2022 15:11:20 +0000 Received: from localhost ([127.0.0.1]:34962 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nVxDD-0002Oa-Vl for submit@debbugs.gnu.org; Sun, 20 Mar 2022 11:11:20 -0400 Received: from lists.gnu.org ([209.51.188.17]:57750) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nVxDC-0002OS-LO for submit@debbugs.gnu.org; Sun, 20 Mar 2022 11:11:18 -0400 Received: from eggs.gnu.org ([209.51.188.92]:35304) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nVxDC-0006D9-HG for bug-guile@gnu.org; Sun, 20 Mar 2022 11:11:18 -0400 Received: from [2607:f8b0:4864:20::429] (port=45015 helo=mail-pf1-x429.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nVxD9-000419-S7 for bug-guile@gnu.org; Sun, 20 Mar 2022 11:11:18 -0400 Received: by mail-pf1-x429.google.com with SMTP id u17so13482417pfk.11 for ; Sun, 20 Mar 2022 08:11:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:content-language:to:from :subject:content-transfer-encoding; bh=flIa84T2wI+rJjW5GBRnMSCuwWUEylxF9PI4NOC7OvQ=; b=SGCaNRp0F+wEfn3q5DTPfcDS7LDZHW+TgVaU3rBxRzbuiRNnS86p3ytV7nhvBwhuWg B9ZgkCJ1vRWGn1ocLUz3doJ3JHXt7Wxqt1CsClDzEP0Z1BW0Ul/UpW639DEeW+REQquJ sX4jNHqqVjT9NGHecSaNyakOcNGzwdAoIFrT1Oh6kuOwz4aT+vhx/rIMf+RYovO+5aov eH3q4GrZhrj4B+EnNyWLz7ue9VDy3KoeANkoU6cF4WvrzwR3Fbrj+Fxwda7Op3104DMy 5pXq96JXvFKoqE9ZOPgERdc2NX6K6SmPO9bCQrFmwoAwcGvfJwkMkqwrGoRffPgS6353 rKCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent :content-language:to:from:subject:content-transfer-encoding; bh=flIa84T2wI+rJjW5GBRnMSCuwWUEylxF9PI4NOC7OvQ=; b=eQZeVgyGsyk3qyM3cPo6ehyXPMUezQeaDa36OWy2oqSZ9NwlJ/KmZkdx2afMH3KZ2S IVbtVdvyoIzYfdlJn4TUsAeDlmy7MSpig0A31GbvoiBeRxp6R+Ma/qdTPYgnTkKbx3B4 pMojM1RGwCTBYlZfad9en9Z5x26S0FWbJW31nOj4WqNx7mbKEJk9HxdZIP/Bdg1TUhS5 85nVA/dHrKSp3P0HmVd2kxcajft4MuHcOTmUjSfr5d+PXx2GOAbnlj91G079of0JzUbV ozXwKoo7EVPXzohtFRuXooEr6KWPc38gq/b2TpOke+rXR/WBNW5UxU9DN7fry8yc1n12 JpnA== X-Gm-Message-State: AOAM532mJyXW/3PddCAGag1MGtWqSD2sdYILvtlrRzTELJKuW23cdbYM WmbRo4PIs/kRg1fPW+Eryq3bLVUaYYw= X-Google-Smtp-Source: ABdhPJzpedg9GNcAvTubVZhRur0v5YJLp25IC0AtXYQ8ZDhvSA60d7Irp1cNlZrY6GFfL1x/hbAvhw== X-Received: by 2002:aa7:8432:0:b0:4f6:6dcd:4f19 with SMTP id q18-20020aa78432000000b004f66dcd4f19mr19691313pfn.53.1647789072470; Sun, 20 Mar 2022 08:11:12 -0700 (PDT) Received: from [192.168.2.158] (64-52-176-132.championbroadband.com. [64.52.176.132]) by smtp.gmail.com with ESMTPSA id il3-20020a17090b164300b001c6d5ed3cacsm5133235pjb.1.2022.03.20.08.11.11 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 20 Mar 2022 08:11:12 -0700 (PDT) Message-ID: <4b3857bc-a068-a1c8-4583-73c9d3c909bc@gmail.com> Date: Sun, 20 Mar 2022 08:11:10 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US To: bug-guile@gnu.org From: Matt Wette Subject: unwanted source references showing up w/ -O0 (with patch) Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::429 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::429; envelope-from=matt.wette@gmail.com; helo=mail-pf1-x429.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) 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.3 (--) In guile-3.0.8, when I compile w/ optimiation-level 0, I am seeing references to the beginning let-form. The following illustrates the issue. Consider foo.scm: (define *a* (make-parameter 0)) (define (foo . args) (let* ((b (+ (*a*) 1)) (c (+ (*a*) b 2))) (simple-format #t "foo a= ~S\n" (*a*)) (simple-format #t "foo b= ~S\n" b) (simple-format #t "foo c= ~S\n" c))) and p2.scm: (use-modules (system base compile)) (use-modules (system vm program)) (use-modules (ice-9 pretty-print)) (compile-and-load "foo.scm" #:optimization-level 0) (define sources (program-sources-pre-retire foo)) (pretty-print sources) With guile-3.0.8, I see the followiing output. Note the references back to line 2.((0 "foo.scm" 1 . 0) (20 "foo.scm" 2 . 4) (20 "foo.scm" 2 . 15) (76 "foo.scm" 2 . 18) (132 "foo.scm" 2 . 17) (152 "foo.scm" 2 . 23) (156 "foo.scm" 2 . 14) (176 "foo.scm" 2 . 4) (176 "foo.scm" 3 . 15) (232 "foo.scm" 3 . 18) (288 "foo.scm" 3 . 17) (308 "foo.scm" 3 . 23) (312 "foo.scm" 3 . 25) (316 "foo.scm" 3 . 14) (336 "foo.scm" 2 . 4) (336 "foo.scm" 4 . 7) (392 "foo.scm" 4 . 21) (396 "foo.scm" 4 . 24) (404 "foo.scm" 4 . 39) (460 "foo.scm" 4 . 38) (480 "foo.scm" 4 . 6) (496 "foo.scm" 2 . 4) (496 "foo.scm" 5 . 7) (552 "foo.scm" 5 . 21) (556 "foo.scm" 5 . 24) (564 "foo.scm" 5 . 38) (568 "foo.scm" 5 . 6) (584 "foo.scm" 6 . 7) (640 "foo.scm" 6 . 21) (644 "foo.scm" 6 . 24) (652 "foo.scm" 6 . 38) (656 "foo.scm" 6 . 6)) With the patch shown below, this is what I get: ((0 "foo.scm" 1 . 0) (20 "foo.scm" 2 . 4) (20 "foo.scm" 2 . 15) (76 "foo.scm" 2 . 18) (132 "foo.scm" 2 . 17) (152 "foo.scm" 2 . 23) (156 "foo.scm" 2 . 14) (176 "foo.scm" 2 . 4) (176 "foo.scm" 3 . 15) (232 "foo.scm" 3 . 18) (288 "foo.scm" 3 . 17) (308 "foo.scm" 3 . 23) (312 "foo.scm" 3 . 25) (316 "foo.scm" 3 . 14) (336 "foo.scm" 4 . 7) (392 "foo.scm" 4 . 21) (396 "foo.scm" 4 . 24) (404 "foo.scm" 4 . 39) (460 "foo.scm" 4 . 38) (480 "foo.scm" 4 . 6) (496 "foo.scm" 5 . 7) (552 "foo.scm" 5 . 21) (556 "foo.scm" 5 . 24) (564 "foo.scm" 5 . 38) (568 "foo.scm" 5 . 6) (584 "foo.scm" 6 . 7) (640 "foo.scm" 6 . 21) (644 "foo.scm" 6 . 24) (652 "foo.scm" 6 . 38) (656 "foo.scm" 6 . 6)) Patch follows. In a sequence, the source of the forms should be emitted, not the parent sequence source (start). --- guile-3.0.8-dist/module/language/tree-il/compile-bytecode.scm 2021-09-30 05:30:38.000000000 -0700 +++ guile-3.0.8-srcfix/module/language/tree-il/compile-bytecode.scm 2022-03-19 09:37:28.126740690 -0700 @@ -910,7 +910,7 @@ (define (visit-seq exp env ctx) (match exp (($ src head tail) - (maybe-emit-source src) + ;;(maybe-emit-source src) (for-effect head env) (for-context tail env ctx)))) From debbugs-submit-bounces@debbugs.gnu.org Sun Mar 27 10:27:40 2022 Received: (at 54478) by debbugs.gnu.org; 27 Mar 2022 14:27:40 +0000 Received: from localhost ([127.0.0.1]:56399 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nYTro-000256-By for submit@debbugs.gnu.org; Sun, 27 Mar 2022 10:27:40 -0400 Received: from mail-pl1-f175.google.com ([209.85.214.175]:43930) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nYTrm-00024t-CC for 54478@debbugs.gnu.org; Sun, 27 Mar 2022 10:27:38 -0400 Received: by mail-pl1-f175.google.com with SMTP id w8so12656736pll.10 for <54478@debbugs.gnu.org>; Sun, 27 Mar 2022 07:27:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:to:content-language:from :subject:content-transfer-encoding; bh=FKWxf8ZPEyrTwL2R22BsqQ3cFc2+ss3im6VzEtVTp1A=; b=b1ZsY0VvTNggihdp8wzfxjM25wDq07msO17f3eDW5UHCoTfR0jDNPhxBtl7ypNERmq gWnuKR1fMnBCUfK+TqUR41M2kLyOFn9Hhk+NPJBc69aKe1SJ8Uw68Jbg3YCL87sPtozr HteAuaTlSyQ5s0WPX94bMatSDAc1H8YfCd1eHJMhSMyXp+6BjuZ+2FeXq2KxdvsLTyF9 9LhCIdbTTT9RLJOhWUAaSSoqSs8BORk2T+lZWIWDdC0Oihp2ZcExXe0+mp6WOBywWv75 iFD5+pMzwjBhevj4twrz6Y3KA0mvd5Lruloh+coiqDVNM6chsr6TvA9ZtTpZvcAufOzx 5VTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:to :content-language:from:subject:content-transfer-encoding; bh=FKWxf8ZPEyrTwL2R22BsqQ3cFc2+ss3im6VzEtVTp1A=; b=1sOd4BgnYEd4Q/xqAKZAWZ53lwh8bn9lpXMdfSLlKYHqgbUKFAD86ScQtiJfX0SXrv 2aElQzird/BG9t0m4x5QXIPUiep1zbcAYEZiouM52jm0VmmkpfRHmRht4qa8neBvxZdf XgznRxKo5lnBv5W8A/I1MdEEa9bDYN45aTIcRVEp39jTlPReG5hlKNXTSbBOqtPXxRAj gqL5U1NCOzAu+9G8xo5otcutYsBKFBkp1VmcAqHcCOnR8P8fyCSmOLPXX/sMvuULFfaH 1CaGVGqtzwg8ap/vjjADjWTZywhHQ/LBESbWJouKykQxt9/g4Oa6PZb8YhvTrVhWSVpL suyg== X-Gm-Message-State: AOAM530BYMUpbuYBL+kGVmYuAZfEgwZgADmGTTHt7BAdN9KpkRxb7ijW o004YiYVgEgV6z6EjxqD4Gtxi5AKGnI= X-Google-Smtp-Source: ABdhPJxPrbNJONSRkkCOTGBXcW2WxrnZCbaaf7dGbqm75FGCn2t+saCJJgkth4ukCF6gvNzPZ7akbQ== X-Received: by 2002:a17:90a:3181:b0:1c7:6d18:391a with SMTP id j1-20020a17090a318100b001c76d18391amr24347385pjb.30.1648391252096; Sun, 27 Mar 2022 07:27:32 -0700 (PDT) Received: from [192.168.2.158] (64-52-176-132.championbroadband.com. [64.52.176.132]) by smtp.gmail.com with ESMTPSA id d16-20020a056a00245000b004f7728a4346sm13101317pfj.79.2022.03.27.07.27.31 for <54478@debbugs.gnu.org> (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 27 Mar 2022 07:27:31 -0700 (PDT) Message-ID: Date: Sun, 27 Mar 2022 07:27:30 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 To: 54478@debbugs.gnu.org Content-Language: en-US From: Matt Wette Subject: Re: unwanted source references Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 54478 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 (-) I think the error is in use of "src" arg to make-seq in the following loop, in ice-9/psyntax.scm, starting at line 1633: (let lp ((var-ids var-ids) (vars vars) (vals vals) (tail (expand-tail-expr))) (cond ((null? var-ids) tail) ((not (car var-ids)) (lp (cdr var-ids) (cdr vars) (cdr vals) (make-seq src ((car vals)) tail))) (else (let ((var-ids (map (lambda (id) (if id (syntax->datum id) '_)) (reverse var-ids))) (vars (map (lambda (var) (or var (gen-label))) (reverse vars))) (vals (map (lambda (expand-expr id) (if id (expand-expr) (make-seq src (expand-expr) (build-void src)))) (reverse vals) (reverse var-ids)))) (build-letrec src #t var-ids vars vals tail)))))