[squeak-dev] The Trunk: Kernel-eem.675.mcz

Bert Freudenberg bert at freudenbergs.de
Mon Mar 19 22:17:41 UTC 2012


Mea culpa! But thank you :)

- Bert -

On 19.03.2012, at 21:51, commits at source.squeak.org wrote:

> Eliot Miranda uploaded a new version of Kernel to project The Trunk:
> http://source.squeak.org/trunk/Kernel-eem.675.mcz
> 
> ==================== Summary ====================
> 
> Name: Kernel-eem.675
> Author: eem
> Time: 19 March 2012, 2:51:13.711 pm
> UUID: 44dbc698-62dc-4f6b-afd0-c987fdadb1f7
> Ancestors: Kernel-eem.674
> 
> Fix the improved decompileWithTempNames for doits
> without temp names. 673 breaks e.g.
> 	DecompilerTests new testRemoteTemp
> 
> =============== Diff against Kernel-eem.674 ===============
> 
> Item was changed:
>  ----- Method: CompiledMethod>>decompileWithTemps (in category 'decompiling') -----
>  decompileWithTemps
> + 	"Return the decompiled parse tree that represents self, but with the temp names obtained
> + 	 either by compiling the sourcecode, or directly if the method has temps in its trailer."
> - 	"Return the decompiled parse tree that represents self, but with the temp names
> - 	 either by compiling the sourcecode, or direct if the method has temps in its trailer."
> 
> + 	| class selector tempNames source |
> - 	|  class selector tempNames |
>  	class := self methodClass ifNil: [Object].
>  	selector := self selector ifNil: [self defaultSelector].
> 
> + 	self holdsTempNames
> + 		ifTrue: [tempNames := self tempNamesString]
> + 		ifFalse:
> + 			["No source file or no source (e.g. doits) and no temp names
> + 			 -- decompile without temp names "
> + 			((self fileIndex > 0 and: [(SourceFiles at: self fileIndex) isNil])
> + 			or: [(source := self getSourceFromFile) isNil]) ifTrue:
> + 				[^self decompile].
> + 			tempNames := (class newCompiler
> + 									parse: source asString
> - 	(self fileIndex > 0 and: [(SourceFiles at: self fileIndex) isNil]) ifTrue:
> - 		"Emergency or no source file -- decompile without temp names "
> - 		[^self decompile].
> - 
> - 	tempNames := self holdsTempNames
> - 					ifTrue: [self tempNamesString]
> - 					ifFalse: [(class newCompiler
> - 									parse: self getSourceFromFile asString
>  									in: class
>  									notifying: nil)
>  										generate: CompiledMethodTrailer defaultMethodTrailer;
>  										schematicTempNamesString].
> + 
>  	^(self decompilerClass new withTempNames: tempNames)
>  		decompile: selector
>  		in: class
>  		method: self methodForDecompile!
> 
> 





More information about the Squeak-dev mailing list