Compressed or otherwise strange sources (was Re: Sq 3.9-7061 broken sources)

Marcus Denker denker at
Tue Oct 10 07:04:08 UTC 2006

On 10.10.2006, at 01:54, tim Rowledge wrote:

> On 9-Oct-06, at 3:50 PM, Marcus Denker wrote:
>> In Preferences>>class there is:
>> compileAccessMethodForPreference: aPreference
>> 	"Compile an accessor method for the given preference"
>> 	self class compileSilently: (aPreference name, '
>> 	^ self valueOfFlag: #', aPreference name, ' ifAbsent: [',  
>> aPreference defaultValue storeString, ']') classified: 'standard  
>> queries'
>> This will result in methods with a trailer of #(0 0 0 0)...
> Interesting. That seems like a mistake to me. Surely any method  
> that can appear in the browsers really ought to have properly set  
> sourcecode, just out of politeness.

Yes. Just to make sure: This is not 3.9 specific. It has been there  
for ages (I guess as long as Preferences exist)

> Anyway, what I'm trying to establish is that there are no methods  
> with compress or otherwise strange sources in the image.  No source  
> at all is ok I suppose, so long as I know about it.

It has bitten me in the past, too. It's quite interesting when you  
can recompile the image once, but not twice (because the decompiler  
had a bug).

> SystemNavigation default allMethodsNoDoitsSelect:[:cm|
> 		cm last between: 1 and: 251]
> which is an empty collection. So I *think* from checking up with  
> CompiledMethod>endPC etc that I can feel sure all is ok.
> It seems that all methods have the new property stuff added. What  
> I'm hoping to do is move the source reference into the properties,  
> where once it is a proper object and not a poorly fudged integer of  
> strongly assumed nature, it can be extend to do any interesting  
> access work.

Good! Did you look at the patch that Klaus did? I don't remember if  
he uses properties, though.


More information about the Squeak-dev mailing list