[squeak-dev] The Trunk: Compiler-mt.462.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Nov 18 09:45:53 UTC 2021
Marcel Taeumel uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-mt.462.mcz
==================== Summary ====================
Name: Compiler-mt.462
Author: mt
Time: 18 November 2021, 10:45:52.7882 am
UUID: 21edd0e3-4506-c14d-a46b-010f38d5bf0e
Ancestors: Compiler-eem.461
Complements Kernel-mt.1422
=============== Diff against Compiler-eem.461 ===============
Item was changed:
----- Method: MessageNode>>transformCase: (in category 'macro transformations') -----
transformCase: encoder
| caseNode |
caseNode := arguments first.
(caseNode isMemberOf: BraceNode) ifFalse: [^false].
(caseNode blockAssociationCheck: encoder) ifFalse: [^false].
(arguments size = 1
+ or: [self checkBlock: arguments last as: 'otherwise arg' from: encoder maxArgs: 1]) ifFalse:
- or: [self checkBlock: arguments last as: 'otherwise arg' from: encoder maxArgs: 0]) ifFalse:
[^false].
caseNode elements do:
[:messageNode |
messageNode receiver noteOptimizedIn: self.
messageNode arguments first noteOptimizedIn: self].
arguments size = 2 ifTrue:
+ [| otherwiseBlock |
+ otherwiseBlock := arguments last noteOptimizedIn: self.
+ otherwiseBlock numberOfArguments = 1 ifTrue:
+ [receiver := AssignmentNode new
+ variable: otherwiseBlock firstArgument
+ value: receiver.
+ encoder noteSourceRange: (encoder sourceRangeFor: self) forNode: receiver]].
- [arguments last noteOptimizedIn: self].
^true!
More information about the Squeak-dev
mailing list
|