The Trunk: Tools-cmm.518.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Tools-cmm.518.mcz

commits-2
Chris Muller uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-cmm.518.mcz

==================== Summary ====================

Name: Tools-cmm.518
Author: cmm
Time: 3 February 2014, 3:40:50.779 pm
UUID: 6277da39-26fa-467e-9b30-244ee58b4000
Ancestors: Tools-topa.517

References through named instVars are strong even on weak classes.  Fix PointerFinder behavior accordingly.
        Add comment reminding about the purpose of Object>>#shouldFollowOutboundPointers.

=============== Diff against Tools-topa.517 ===============

Item was changed:
  ----- Method: Object>>shouldFollowOutboundPointers (in category '*Tools-Debugger') -----
  shouldFollowOutboundPointers
+ "Allow other subclasses of ProtoObject to hook this method."
  (self class isPointers or: [ self isCompiledMethod ]) ifFalse: [ ^ false ].
+ ^ (self class isWeak not or: [ self class instSize > 0 ]) and: [ self isLiteral not ]!
- ^ self class isWeak not and: [ self isLiteral not ]!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Tools-cmm.518.mcz

Chris Muller-3
shouldFollowOutboundPointers was recently introduced so that other
subclasses of ProtoObject can override it the way they want.



On Mon, Feb 3, 2014 at 3:43 PM,  <[hidden email]> wrote:

> Chris Muller uploaded a new version of Tools to project The Trunk:
> http://source.squeak.org/trunk/Tools-cmm.518.mcz
>
> ==================== Summary ====================
>
> Name: Tools-cmm.518
> Author: cmm
> Time: 3 February 2014, 3:40:50.779 pm
> UUID: 6277da39-26fa-467e-9b30-244ee58b4000
> Ancestors: Tools-topa.517
>
> References through named instVars are strong even on weak classes.  Fix PointerFinder behavior accordingly.
>         Add comment reminding about the purpose of Object>>#shouldFollowOutboundPointers.
>
> =============== Diff against Tools-topa.517 ===============
>
> Item was changed:
>   ----- Method: Object>>shouldFollowOutboundPointers (in category '*Tools-Debugger') -----
>   shouldFollowOutboundPointers
> +       "Allow other subclasses of ProtoObject to hook this method."
>         (self class isPointers or: [ self isCompiledMethod ]) ifFalse: [ ^ false ].
> +       ^ (self class isWeak not or: [ self class instSize > 0 ]) and: [ self isLiteral not ]!
> -       ^ self class isWeak not and: [ self isLiteral not ]!
>
>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Tools-cmm.518.mcz

Chris Muller-3
Unless Levente's shouldBePrintedAsLiteral change is absolutely needed too?

Seems like not but someone else please confirm and I'll go ahead and
make an RC3..

On Mon, Feb 3, 2014 at 3:45 PM, Chris Muller <[hidden email]> wrote:

> shouldFollowOutboundPointers was recently introduced so that other
> subclasses of ProtoObject can override it the way they want.
>
>
>
> On Mon, Feb 3, 2014 at 3:43 PM,  <[hidden email]> wrote:
>> Chris Muller uploaded a new version of Tools to project The Trunk:
>> http://source.squeak.org/trunk/Tools-cmm.518.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Tools-cmm.518
>> Author: cmm
>> Time: 3 February 2014, 3:40:50.779 pm
>> UUID: 6277da39-26fa-467e-9b30-244ee58b4000
>> Ancestors: Tools-topa.517
>>
>> References through named instVars are strong even on weak classes.  Fix PointerFinder behavior accordingly.
>>         Add comment reminding about the purpose of Object>>#shouldFollowOutboundPointers.
>>
>> =============== Diff against Tools-topa.517 ===============
>>
>> Item was changed:
>>   ----- Method: Object>>shouldFollowOutboundPointers (in category '*Tools-Debugger') -----
>>   shouldFollowOutboundPointers
>> +       "Allow other subclasses of ProtoObject to hook this method."
>>         (self class isPointers or: [ self isCompiledMethod ]) ifFalse: [ ^ false ].
>> +       ^ (self class isWeak not or: [ self class instSize > 0 ]) and: [ self isLiteral not ]!
>> -       ^ self class isWeak not and: [ self isLiteral not ]!
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Tools-cmm.518.mcz

Chris Muller-3
In reply to this post by commits-2
I'm too chicken to take out the isLiteral optimization at this stage,
but it definitely should honor strong refs from named instVars of weak
classes.

On Mon, Feb 3, 2014 at 3:43 PM,  <[hidden email]> wrote:

> Chris Muller uploaded a new version of Tools to project The Trunk:
> http://source.squeak.org/trunk/Tools-cmm.518.mcz
>
> ==================== Summary ====================
>
> Name: Tools-cmm.518
> Author: cmm
> Time: 3 February 2014, 3:40:50.779 pm
> UUID: 6277da39-26fa-467e-9b30-244ee58b4000
> Ancestors: Tools-topa.517
>
> References through named instVars are strong even on weak classes.  Fix PointerFinder behavior accordingly.
>         Add comment reminding about the purpose of Object>>#shouldFollowOutboundPointers.
>
> =============== Diff against Tools-topa.517 ===============
>
> Item was changed:
>   ----- Method: Object>>shouldFollowOutboundPointers (in category '*Tools-Debugger') -----
>   shouldFollowOutboundPointers
> +       "Allow other subclasses of ProtoObject to hook this method."
>         (self class isPointers or: [ self isCompiledMethod ]) ifFalse: [ ^ false ].
> +       ^ (self class isWeak not or: [ self class instSize > 0 ]) and: [ self isLiteral not ]!
> -       ^ self class isWeak not and: [ self isLiteral not ]!
>
>