[squeak-dev] The Trunk: Tests-eem.96.mcz

Levente Uzonyi leves at elte.hu
Sun Oct 24 03:44:00 UTC 2010


On Sun, 10 Oct 2010, commits at source.squeak.org wrote:

> Eliot Miranda uploaded a new version of Tests to project The Trunk:
> http://source.squeak.org/trunk/Tests-eem.96.mcz
>
> ==================== Summary ====================
>
> Name: Tests-eem.96
> Author: eem
> Time: 9 October 2010, 5:50:13.075 pm
> UUID: 8800404e-9468-4032-bee6-fe8400f7334a
> Ancestors: Tests-eem.95
>
> Reduce DecompilerTest failures to three legitimate failures.
> Do so by restricting tests to base classes in 4.1, by using deocmpileWithTempNames: to eliminate temp orderig issues, and by adding a few expected failures (but eliminating many more).

I still get 5 errors. Methods which have a variable declared in an 
optimized loop's block and that variable is also used by a real block have 
to be recompiled. I came up with the following script:

#(
 	(Command veryDeepFixupWith:)
 	(Installer reportFor:page:on:)
 	(Player veryDeepFixupWith:)
 	(PNGReadWriter processInterlaced)
 	(SHMCClassDefinition withAllSuperclasses)
 	(SHMCClassDefinition allInstVarNames)) do: [ :each |
 		Smalltalk at: each first ifPresent: [ :class |
 			(class includesSelector: each second) ifTrue: [
 				class recompile: each second ] ] ].

This is ok for the release and images with unloaded packages (core), but 
it's not sufficient for images which have external packages loaded. Is 
there a way to detect such methods without decompiling all methods in the 
image?


Levente


snip



More information about the Squeak-dev mailing list