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