On dim. 15 avr. 2018 at 16:43, Ben Coman <btc@openinworld.com> wrote:
The greater prominence of Critiques in Calypso��
encourages me to try to clean them out.

I bumped into a false positive "Temporaries read before written."
that I've condensed to the following example.

�� �� test
�� �� �� �� |x|
�� �� �� �� [ x := nil ] whileNil: [ x ifNil: [ x := 1] ]

Now before I log an Issue, is it feasible to be able to recognise this?
Perhaps only for common looping idioms?

Anyway, the workaround is simple enough...

Hi Ben,

I do not have an answer regarding the variables written in the blocks, but for false positive you can also just exclude a rule for the scope of the method, class, package and image IIRC. There was a presentation at esug about it.��
��
I'm on phone and it's hard to search for the link currently.��

�� �� test
�� �� �� �� |x|
�� �� �� �� x := nil. "silence critiques"
�� �� �� �� [ x := nil ] whileNil: [ x ifNil: [ x := 1] ]

cheers -ben
--
Cyril Ferlicot
https://ferlicot.fr