[squeak-dev] The Trunk: Compiler-eem.280.mcz

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon May 12 18:45:05 UTC 2014


2014-05-12 20:30 GMT+02:00 <commits at source.squeak.org>:

> Eliot Miranda uploaded a new version of Compiler to project The Trunk:
> http://source.squeak.org/trunk/Compiler-eem.280.mcz
>
> ==================== Summary ====================
>
> Name: Compiler-eem.280
> Author: eem
> Time: 12 May 2014, 11:29:30.127 am
> UUID: f8e06e2d-2a56-40e8-9783-6b17b6ca0e2e
> Ancestors: Compiler-nice.279
>
> Get rid of the old
>         ([:a :b|] value: #first value: #last) == #last
> anachronism.  Now all empty blocks answer nil.
>
> =============== Diff against Compiler-nice.279 ===============
>
> Item was changed:
>   ----- Method: BlockNode>>arguments:statements:returns:from: (in category
> 'initialize-release') -----
>   arguments: argNodes statements: statementsCollection returns: returnBool
> from: encoder
>         "Compile."
>
>         arguments := argNodes.
>         statements := statementsCollection size > 0
> +                                       ifTrue: [statementsCollection]
> +                                       ifFalse: [Array with: NodeNil].
> -                               ifTrue: [statementsCollection]
> -                               ifFalse: [argNodes size > 0
> -                                               ifTrue:
> [statementsCollection copyWith: arguments last]
> -                                               ifFalse: [Array with:
> NodeNil]].
>         optimized := false.
>         returns := returnBool!
>
>
>
Yeah, it even simplifies the code, so there is really no reason not to do
it.
If ever someone complains that we dropped backward compatibility, we can
now tell: you should not rely on undefined behavior
(a very popular sentence in {} world)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20140512/2e401213/attachment.htm


More information about the Squeak-dev mailing list