[squeak-dev] Squeak4.2-10892-beta image

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Wed Jan 12 22:21:45 UTC 2011


2011/1/12 Levente Uzonyi <leves at elte.hu>:
> On Wed, 12 Jan 2011, Chris Muller wrote:
>
>> I've just posted a new beta image at:
>>
>>  ftp://ftp.squeak.org/4.2/
>>
>> This one does not have wrecked PackageInfo's, and has most (but not
>> all) of the aesthetic changes for 4.2.
>>
>> The test suite is looking better:
>>
>> 'CompilerExceptionsTest>>#testUnusedVariable
>
> This one is new, I'd be happy if someone could have a look at it.
>

This is due to latest improvements from Eliot.
Now the BlockNode have their own tempsMark (set by
Parser>>#temporaryBlockVariablesFor:).
The Parser only records top level tempsMark in Parser>>#temporaries.

If you look at the code in Parser>>#removeUnusedTemps, you see some
defensive programming
	((tempsMark between: 1 and: str size)
		and: [(str at: tempsMark) = $|]) ifFalse: [^ self].

But hey, the top level does not have any tempsMark, so the method
prematurely returns without checking for some unused in the blocks.
self
	justTriedCompiling: 'griffle | | ^[ | goo | ]'
	andItCorrectlyRaised: UnusedVariable.

Shall we remove the tempsMark protection ?

Nicolas



More information about the Squeak-dev mailing list