From debbugs-submit-bounces@debbugs.gnu.org Sat May 04 10:57:48 2013 Received: (at submit) by debbugs.gnu.org; 4 May 2013 14:57:48 +0000 Received: from localhost ([127.0.0.1]:58132 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UYduE-0003nz-Rg for submit@debbugs.gnu.org; Sat, 04 May 2013 10:57:48 -0400 Received: from eggs.gnu.org ([208.118.235.92]:50846) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UYXCa-0002pN-3o for submit@debbugs.gnu.org; Sat, 04 May 2013 03:48:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UYXBo-0003lM-RS for submit@debbugs.gnu.org; Sat, 04 May 2013 03:47:31 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:53778) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UYXBo-0003lI-OP for submit@debbugs.gnu.org; Sat, 04 May 2013 03:47:28 -0400 Received: from eggs.gnu.org ([208.118.235.92]:33961) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UYXBl-00088p-VC for bug-guile@gnu.org; Sat, 04 May 2013 03:47:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UYXBj-0003ik-LX for bug-guile@gnu.org; Sat, 04 May 2013 03:47:25 -0400 Received: from smtp-rs1-vallila2.fe.helsinki.fi ([128.214.173.75]:54952) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UYXBj-0003Ua-Ac for bug-guile@gnu.org; Sat, 04 May 2013 03:47:23 -0400 Received: from ruuvi.it.helsinki.fi.ling.helsinki.fi (ruuvi.it.helsinki.fi [128.214.205.65]) by smtp-rs1.it.helsinki.fi (8.14.4/8.14.4) with ESMTP id r447lF0G023262 for ; Sat, 4 May 2013 10:47:16 +0300 To: Subject: reset, shift, continuation values truncated inconsistently From: Jussi Piitulainen Date: 04 May 2013 10:47:15 +0300 Message-ID: Lines: 37 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -4.2 (----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sat, 04 May 2013 10:57:45 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) Hi, the following seems at least inconsistent to me and possibly unintended: I believe it demonstrates that the continuation captured by `shift' passes all its values to its continuation when it's called directly, but truncates them to the first value when it's bound to a variable outside the reset expression and then called. The documentation for reset and shift in the manual does not quite say, but I believe the captured continuation in these examples should be the continuation of the shift expression inside the reset expression, that is, it should simply return the three values in all cases. GNU Guile 2.0.5-deb+1-3 Copyright (C) 1995-2012 Free Software Foundation, Inc. ... Enter `,help' for help. scheme@(guile-user)> (use-modules (ice-9 control)) scheme@(guile-user)> (reset (shift k (k)) (values 3.1 2 3)) $1 = 3.1 $2 = 2 $3 = 3 scheme@(guile-user)> ((reset (shift k k) (values 3.1 2 3))) $4 = 3.1 $5 = 2 $6 = 3 scheme@(guile-user)> (let ((k (reset (shift k k) (values 3.1 2 3)))) (k)) $7 = 3.1 scheme@(guile-user)> (define k (reset (shift k k) (values 3.1 2 3))) scheme@(guile-user)> (k) $8 = 3.1 scheme@(guile-user)> (k) $9 = 3.1 (I installed guile-2.0 with apt-get on Ubuntu and got this.) From debbugs-submit-bounces@debbugs.gnu.org Mon May 06 15:07:38 2013 Received: (at 14347) by debbugs.gnu.org; 6 May 2013 19:07:38 +0000 Received: from localhost ([127.0.0.1]:60158 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UZQl7-0005Xn-Tr for submit@debbugs.gnu.org; Mon, 06 May 2013 15:07:38 -0400 Received: from mail-wg0-f51.google.com ([74.125.82.51]:63141) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UZQl5-0005XY-Fz for 14347@debbugs.gnu.org; Mon, 06 May 2013 15:07:36 -0400 Received: by mail-wg0-f51.google.com with SMTP id b13so3786400wgh.6 for <14347@debbugs.gnu.org>; Mon, 06 May 2013 12:06:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=x-received:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-type :content-transfer-encoding; bh=sMSDWsXRKoe0OT/hZUwcZxQo9Vx5HxKIUjqFXBfSms0=; b=VLXon3HWCLw+/FMz3R8UGoyRBAz+xzaFHKSwPXmxLCUjvECLoKeOpbgAI5nd0HY8rS TJBUSVasXTRTEOyJ9OGmwJC/hPH05I9XdT84Ouu5T9ufbk/BZy/hDrm2EMOUQ9eQ6zR/ yfE8mdatM+0K9HQRI7VbpWJMiS90nPzLDfYnJ9YHREIdgk5sNQbmPq7NHe9CDiwkI2Tj c7H5fptgF4CACS5BJt+Nja7r3eY5VOzgiHTCXO2aEBzJ/9giRMeEuhK/bdRlsH7Uglnm IPR6s7UOZ5sibMKZLSLvn1uUZxqovJbmxq7CmLI/N5suNjYkEcFjND2/LJPuCzg+ddRW MCcw== X-Received: by 10.194.104.102 with SMTP id gd6mr13732848wjb.48.1367867196436; Mon, 06 May 2013 12:06:36 -0700 (PDT) Received: from Kagami.home (host81-155-30-39.range81-155.btcentralplus.com. [81.155.30.39]) by mx.google.com with ESMTPSA id er17sm15951256wic.0.2013.05.06.12.06.33 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Mon, 06 May 2013 12:06:34 -0700 (PDT) From: Ian Price To: Jussi Piitulainen Subject: Re: bug#14347: reset, shift, continuation values truncated inconsistently References: Date: Mon, 06 May 2013 20:06:30 +0100 In-Reply-To: (Jussi Piitulainen's message of "04 May 2013 10:47:15 +0300") Message-ID: <8761ywexmx.fsf@Kagami.home> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 14347 Cc: 14347@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.3 (--) Jussi Piitulainen writes: > The documentation for reset and shift in the > manual does not quite say, but I believe the > captured continuation in these examples should be > the continuation of the shift expression inside > the reset expression, that is, it should simply > return the three values in all cases. Totally agree, this is the behaviour I expect > scheme@(guile-user)> (let ((k (reset (shift k k) (values 3.1 2 3)))) (k)) > $7 =3D 3.1 scheme@(guile=E2=88=92user)> (import (only (rnrs) let-values)) scheme@(guile=E2=88=92user)> (let ((k (reset (shift k k) (values 3.1 2 3)))= ) (k)) $40 =3D 3.1 scheme@(guile=E2=88=92user)> (let-values (((k) (reset (shift k k) (values 3= .1 2 3)))) (k)) $41 =3D 3.1 $42 =3D 2 $43 =3D 3 So, my first suspicion was that there is some part of the code that receives the multiple values in a let or something, but neither the code, nor the ,expand command revealed that. However, when we check with ,optimize (let ((k (call-with-prompt ((@@ (ice-9 control) default-prompt-tag)) (lambda () (apply abort ((@@ (ice-9 control) default-prompt-tag)) (lambda (cont) (call-with-prompt ((@@ (ice-9 control) default-prompt-tag)) (lambda () (lambda vals (call-with-prompt ((@@ (ice-9 control) default-prompt-tag)) (lambda () (@apply cont vals)) (lambda (cont f) (f cont))))) (lambda (cont f) (f cont)))) '()) 3.1) (lambda (cont f) (f cont))))) (k)) Gotcha. The optimizer is getting rid of the multiple values. On #guile, mark_weaver reminded me of http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D13966 which I think is the same issue. But I haven't tested that yet. --=20 Ian Price -- shift-reset.com "Programming is like pinball. The reward for doing it well is the opportunity to do it again" - from "The Wizardy Compiled" From debbugs-submit-bounces@debbugs.gnu.org Mon May 06 17:16:19 2013 Received: (at 14347) by debbugs.gnu.org; 6 May 2013 21:16:19 +0000 Received: from localhost ([127.0.0.1]:60258 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UZSld-0002Lr-Ju for submit@debbugs.gnu.org; Mon, 06 May 2013 17:16:19 -0400 Received: from mail-pd0-f169.google.com ([209.85.192.169]:56293) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UZSlZ-0002Le-Bj for 14347@debbugs.gnu.org; Mon, 06 May 2013 17:16:16 -0400 Received: by mail-pd0-f169.google.com with SMTP id 14so2227955pdc.0 for <14347@debbugs.gnu.org>; Mon, 06 May 2013 14:15:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=urnOtolW1Xxag8d3Ejpds9VEKAOqtorZ5LDz50lKCHM=; b=jCIiiO6+KVoavcuATskfkvfnnTpdIyPH7LoRrd6I/2U1lO5c5ae59Y1vqlaFnp8VRZ 7ZEJhjiziTPgSmO1E1YS2/9EYO9otncLUSHPYeCbjOsos6FdNskB1u+FU30oS52Fh2aK QAzqebs4KboXXjy9WwqfNLj7Bn0fPTpJrNZC8+05BHJoXJrrCSPxY4MA28Ym2VtoLTIp g0Uoy3im6UDkZ5Ddujoo8P4rbDc08iYizbmTA4lMXJvelV6drLl8rmj8TS93fuGeNYBz AdvniRyIjGsAsPSuiNw7+d+BMqSeLRILUgEwZLPRSKJBjCPAJ3H6srUfZZ/wyppq9Hfp KKOw== MIME-Version: 1.0 X-Received: by 10.68.90.197 with SMTP id by5mr27636526pbb.196.1367874913746; Mon, 06 May 2013 14:15:13 -0700 (PDT) Received: by 10.70.22.5 with HTTP; Mon, 6 May 2013 14:15:13 -0700 (PDT) In-Reply-To: <8761ywexmx.fsf@Kagami.home> References: <8761ywexmx.fsf@Kagami.home> Date: Mon, 6 May 2013 23:15:13 +0200 Message-ID: Subject: Re: bug#14347: reset, shift, continuation values truncated inconsistently From: Stefan Israelsson Tampe To: Ian Price Content-Type: multipart/alternative; boundary=047d7b675a5a54c5dd04dc133224 X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 14347 Cc: 14347@debbugs.gnu.org, Jussi Piitulainen X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) --047d7b675a5a54c5dd04dc133224 Content-Type: text/plain; charset=ISO-8859-1 Hmm, we have (let ((k (cal-with-prompt tag (-- expr that ends with (values a b c) --) (-- expr that is of unknown values length --)))) (k)) So it looks like peval.scm in language/tree-il does not handle this well. Looking in that file we have (($ src tag body handler) (define (make-prompt-tag? x) (match x (($ _ ($ _ 'make-prompt-tag) (or () ((? constant-expression?)))) #t) (_ #f))) (let ((tag (for-value tag)) (body (for-tail body))) ... cases where we can optimize sue to knowledge of prompt-tag ... (else (make-prompt src tag body (for-value handler)))))) So to me it looks like peval does a for-tail on body, and uses the value constraint on the body. I'm not sure how to fix this though. But that this is the problem can be shown by changing the code to (($ src tag body-in handler) (define (make-prompt-tag? x) (match x (($ _ ($ _ 'make-prompt-tag) (or () ((? constant-expression?)))) #t) (_ #f))) (let ((tag (for-value tag)) (body (for-tail body-in))) ... cases where we can optimize sue to knowledge of prompt-tag ... (else (make-prompt src tag (for-values body-in) (for-value handler)))))) /Stefan On Mon, May 6, 2013 at 9:06 PM, Ian Price wrote: > Jussi Piitulainen writes: > > > The documentation for reset and shift in the > > manual does not quite say, but I believe the > > captured continuation in these examples should be > > the continuation of the shift expression inside > > the reset expression, that is, it should simply > > return the three values in all cases. > Totally agree, this is the behaviour I expect > > > scheme@(guile-user)> (let ((k (reset (shift k k) (values 3.1 2 3)))) > (k)) > > $7 = 3.1 > > scheme@(guile-user)> (import (only (rnrs) let-values)) > scheme@(guile-user)> (let ((k (reset (shift k k) (values 3.1 2 3)))) (k)) > $40 = 3.1 > scheme@(guile-user)> (let-values (((k) (reset (shift k k) (values 3.1 2 > 3)))) (k)) > $41 = 3.1 > $42 = 2 > $43 = 3 > > So, my first suspicion was that there is some part of the code that > receives the multiple values in a let or something, but neither the > code, nor the ,expand command revealed that. However, when we check with > ,optimize > > (let ((k (call-with-prompt > ((@@ (ice-9 control) default-prompt-tag)) > (lambda () > (apply abort > ((@@ (ice-9 control) default-prompt-tag)) > (lambda (cont) > (call-with-prompt > ((@@ (ice-9 control) default-prompt-tag)) > (lambda () > (lambda vals > (call-with-prompt > ((@@ (ice-9 control) default-prompt-tag)) > (lambda () (@apply cont vals)) > (lambda (cont f) (f cont))))) > (lambda (cont f) (f cont)))) > '()) > 3.1) > (lambda (cont f) (f cont))))) > (k)) > > Gotcha. The optimizer is getting rid of the multiple values. > On #guile, mark_weaver reminded me of > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13966 which I think is the > same issue. But I haven't tested that yet. > > -- > Ian Price -- shift-reset.com > > "Programming is like pinball. The reward for doing it well is > the opportunity to do it again" - from "The Wizardy Compiled" > > > > --047d7b675a5a54c5dd04dc133224 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Hmm, we have

(let ((k (cal-with-p= rompt tag (-- expr that ends with (values a b c) --)  (-- expr that is= of unknown values length --))))
  (k))

So it looks like peval.scm in language/tree-il does not handle t= his well.

Looking in that file we have=

(($ <prompt> src tag body = handler)
       (define (make-prompt-tag? x)
&nbs= p;        (match x
       = ;    (($ <application> _ ($ <primitive-ref> _ 'ma= ke-prompt-tag)
              &= nbsp;(or () ((? constant-expression?))))
            #t)
    =        (_ #f)))

    =    (let ((tag  (for-value tag))
    &nbs= p;        (body (for-tail body)))
  &nbs= p;
       ... cases where we can optimi= ze sue to knowledge of prompt-tag ...

       (else
  =          (make-prompt src tag body (for-value hand= ler))))))

So to me it looks like peval= does a for-tail on body, and uses the value constraint on the body. I'= m not sure how to fix this though.

But that this is the problem can be shown b= y changing the code to

(($ <pr= ompt> src tag body-in handler)
       (def= ine (make-prompt-tag? x)
         (match x
    &nb= sp;      (($ <application> _ ($ <primitive-ref> = _ 'make-prompt-tag)
           =    (or () ((? constant-expression?))))
    &= nbsp;       #t)
         =  (_ #f)))

       (let ((tag  (for-value = tag))
             (body (for-= tail body-in)))
   
      &nbs= p;... cases where we can optimize sue to knowledge of prompt-tag ...
<= div>
       (else

=    (make-prompt src tag (for-values body-in) (for-value handler))= ))))

/Stefan

<= /div>


On Mon, May 6, 2013 at 9:06 PM, Ian Pric= e <ianprice90@googlemail.com> wrote:
Jussi Piitulainen <jpiitula@ling.helsinki.fi> writes:

> The documentation for reset and shift in the
> manual does not quite say, but I believe the
> captured continuation in these examples should be
> the continuation of the shift expression inside
> the reset expression, that is, it should simply
> return the three values in all cases.
Totally agree, this is the behaviour I expect

> scheme@(guile-user)> (let ((k (reset (shift k k) (values 3.1 2 3)))= ) (k))
> $7 =3D 3.1

scheme@(guile−user)> (import (only (rnrs) let-values))
scheme@(guile−user)> (let ((k (reset (shift k k) (values 3.1 2 3))= )) (k))
$40 =3D 3.1
scheme@(guile−user)> (let-values (((k) (reset (shift k k) (values = 3.1 2 3)))) (k))
$41 =3D 3.1
$42 =3D 2
$43 =3D 3

So, my first suspicion was that there is some part of the code that
receives the multiple values in a let or something, but neither the
code, nor the ,expand command revealed that. However, when we check with ,optimize

(let ((k (call-with-prompt
           ((@@ (ice-9 control) default-promp= t-tag))
           (lambda ()
             (apply abort
                    ((@@ = (ice-9 control) default-prompt-tag))
                    (lamb= da (cont)
                     = ; (call-with-prompt
                     = ;   ((@@ (ice-9 control) default-prompt-tag))
                     = ;   (lambda ()
                     = ;     (lambda vals
                     = ;       (call-with-prompt
                     = ;         ((@@ (ice-9 control) default-prompt-tag))
                     = ;         (lambda () (@apply cont vals))
                     = ;         (lambda (cont f) (f cont)))))
                     = ;   (lambda (cont f) (f cont))))
                    '= ())
             3.1)
           (lambda (cont f) (f cont)))))
  (k))

Gotcha. The optimizer is getting rid of the multiple values.
On #guile, mark_weaver reminded me of
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D13966 which I th= ink is the
same issue. But I haven't tested that yet.

--
Ian Price -- shift-res= et.com

"Programming is like pinball. The reward for doing it well is
the opportunity to do it again" - from "The Wizardy Compiled"= ;




--047d7b675a5a54c5dd04dc133224-- From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 20 17:07:12 2016 Received: (at 14347-done) by debbugs.gnu.org; 20 Jun 2016 21:07:12 +0000 Received: from localhost ([127.0.0.1]:48108 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bF6PY-0003Q4-FX for submit@debbugs.gnu.org; Mon, 20 Jun 2016 17:07:12 -0400 Received: from pb-sasl1.pobox.com ([64.147.108.66]:50549 helo=sasl.smtp.pobox.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bF6PW-0003Pw-4Z for 14347-done@debbugs.gnu.org; Mon, 20 Jun 2016 17:07:10 -0400 Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by pb-sasl1.pobox.com (Postfix) with ESMTP id BE2AD253DE; Mon, 20 Jun 2016 17:07:07 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=sasl; bh=EDlCXVl7l7PPu7QCC+GOwXQePyk=; b=sYFb9H jc5NJl49rsiGyL+/zNZHZ/RrQuLuufYfWnuiN3EcjgsNczRQf5gDzclvuFEacu9B YU+1CPivpvLB7MM7SBjs6AOWBLbctSz3DWbKXObBWxp7JPzfsCe3hBrD0eO0jCuB aKXD6Gi7fv7lfCcP/LUshL8Jpmyd5HMnpWIuw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=sasl; b=WpFS/ZFv5WhkFscPKWlvSIg9piqj14P4 fHkmEgl35n32ku1lIYUkYCzfdt4+r3xU7x/IJHjJ+TJBsWAkJgT7JwQPlsa5Tmzb Cso8y7PQZHyTnp/pBbjZAfPDAJEhuCUaMn52jlOmOCCqTU/AvXxmjS/XZ+ohQnrT epZ+nzd5rHE= Received: from pb-sasl1.nyi.icgroup.com (unknown [127.0.0.1]) by pb-sasl1.pobox.com (Postfix) with ESMTP id B4B82253DC; Mon, 20 Jun 2016 17:07:07 -0400 (EDT) Received: from clucks (unknown [88.160.190.192]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by pb-sasl1.pobox.com (Postfix) with ESMTPSA id B9EF6253DB; Mon, 20 Jun 2016 17:07:06 -0400 (EDT) From: Andy Wingo To: Jussi Piitulainen Subject: Re: bug#14347: reset, shift, continuation values truncated inconsistently References: Date: Mon, 20 Jun 2016 23:06:59 +0200 In-Reply-To: (Jussi Piitulainen's message of "04 May 2013 10:47:15 +0300") Message-ID: <877fdj7eoc.fsf@pobox.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Pobox-Relay-ID: F2150888-372A-11E6-BE98-C1836462E9F6-02397024!pb-sasl1.pobox.com X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: 14347-done Cc: 14347-done@debbugs.gnu.org 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.4 (-) On Sat 04 May 2013 09:47, Jussi Piitulainen writes: > Hi, the following seems at least inconsistent to > me and possibly unintended: I believe it > demonstrates that the continuation captured by > `shift' passes all its values to its continuation > when it's called directly, but truncates them to > the first value when it's bound to a variable > outside the reset expression and then called. Thank you for the report, and apologies for taking so long to fix it! Fixed in a192c336a22b8c9ac354e88c2f2b317dff22b8c9 on stable-2.0. 2.1.3 already had it fixed, but by accident. Andy From unknown Sat Sep 13 06:04:31 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 19 Jul 2016 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator