Closed donaldsonjw closed 2 years ago
To properly handle nested call-with-values invocations where the outer call-with-values generator does not return multiple values via values, we reset the default number of return values to 1 before invoking the outer consumer.
For example, we want
(call-with-values (lambda () (call-with-values (lambda () (values 1 2 3)) +)) list)
to return (6) not (6 2 3)
Thank you Joseph for this useful fix. All my apologizes for the latency of my reaction.
To properly handle nested call-with-values invocations where the outer call-with-values generator does not return multiple values via values, we reset the default number of return values to 1 before invoking the outer consumer.
For example, we want
to return (6) not (6 2 3)