[squeak-dev] The Inbox: Environments-jr.69.mcz

H. Hirzel hannes.hirzel at gmail.com
Thu Feb 23 12:35:23 UTC 2017


This fix is still in the inbox

    http://source.squeak.org/inbox/

and needs to be moved to

    http://source.squeak.org/treated/

On Sun, 22 Jan 2017 00:58:42 0000, commits at source.squeak.org
<commits at source.squeak.org> wrote:
> A new version of Environments was added to project The Inbox:
> http://source.squeak.org/inbox/Environments-jr.69.mcz
>
> ==================== Summary ====================
>
> Name: Environments-jr.69
> Author: jr
> Time: 22 January 2017, 1:58:32.760832 am
> UUID: bef4785f-f66c-1246-bae6-6a15be9aaf33
> Ancestors: Environments-jr.68
>
> prevent the removal of third-party imported bindings
>
> Previously, when environment T imported from A and B, which both had a
> binding for #x, unbinding #x from either A or B would remove the binding
> from T.
> Now if the binding of #x is removed from A it will only be removed from T if
> T actually uses the binding from A, but not if T uses the binding from B.
>
> It also prevents an environment A from unbinding something in an imported
> environment B when A imports itself and A and B both have a declaration with
> the same key.
>
> =============== Diff against Environments-jr.68 ===============
>
> Item was changed:
>   ----- Method: Environment>>hideBinding: (in category 'binding') -----
>   hideBinding: aBinding
> + 	(bindings bindingOf: aBinding key) == aBinding ifFalse: [^ self].
>   	self undeclare: aBinding key from: bindings!
>
>
>


More information about the Squeak-dev mailing list