[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #1115: Potentially bogus scrutinizer warning "expecte
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #1115: Potentially bogus scrutinizer warning "expected in `let' binding of `x' a single result, but were given 3 results" |
Date: |
Thu, 17 Apr 2014 13:33:29 -0000 |
#1115: Potentially bogus scrutinizer warning "expected in `let' binding of `x' a
single result, but were given 3 results"
---------------------+------------------------------------------------------
Reporter: ckeen | Owner:
Type: defect | Status: new
Priority: major | Milestone: someday
Component: unknown | Version: 4.8.x
Keywords: |
---------------------+------------------------------------------------------
If you try to bind values to a single identifier you will get the above
warning:
{{{
(let ((x (values 1 2 4))) #f)
}}}
That alone isn't surprising as it may be a programmer error but if you use
that inside a macro expansion like
{{{
(receive (in out pid) (process cmd)
(display str out)
(flush-output out)
(close-output-port out)
(let ((res
(base64-encode-string
(read-string #f in))))
(process-wait pid)
res))
}}}
As found in hato's code the message is at least puzzling as the programmer
doesn't care about the values at all, but the macro gets expanded to a
##core#let which in turn gets under scrutiny.
I am not sure what the correct behaviour should be.
--
Ticket URL: <http://bugs.call-cc.org/ticket/1115>
CHICKEN Scheme <http://www.call-with-current-continuation.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Chicken-janitors] #1115: Potentially bogus scrutinizer warning "expected in `let' binding of `x' a single result, but were given 3 results",
Chicken Trac <=