[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-janitors] #1399: Scrutinizer produces incorrect procedure t
From: |
Chicken Trac |
Subject: |
Re: [Chicken-janitors] #1399: Scrutinizer produces incorrect procedure types after merge |
Date: |
Tue, 10 Oct 2017 16:42:55 -0000 |
#1399: Scrutinizer produces incorrect procedure types after merge
------------------------------------+--------------------
Reporter: LemonBoy | Owner:
Type: defect | Status: new
Priority: major | Milestone: 4.13.0
Component: scrutinizer | Version: 4.12.0
Resolution: | Keywords:
Estimated difficulty: medium |
------------------------------------+--------------------
Comment (by megane):
My understanding is that it is always safe to go for more general type. In
this case `procedure` or even just `*` would be ok too. And N >= 0 is more
general than N >= 1.
Notice that `(procedure (#!rest))` does not specify return type. This is
different from `*`.
Indeed, it would be interesting to know if there was any downsides if in
this case the union was left as it is. Maybe it would make the scrutinizer
slower..
--
Ticket URL: <https://bugs.call-cc.org/ticket/1399#comment:2>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.