[squeak-dev] The Trunk: Compiler-nice.82.mcz

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

[squeak-dev] The Trunk: Compiler-nice.82.mcz

commits-2
Nicolas Cellier uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-nice.82.mcz

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

Name: Compiler-nice.82
Author: nice
Time: 12 September 2009, 9:07:16 am
UUID: 4c77174b-dd90-4c6d-943e-fc90a02f6677
Ancestors: Compiler-ar.81

Part of fix for http://bugs.squeak.org/view.php?id=6797
Use #literalEqual: for testing equality of two literals.


=============== Diff against Compiler-ar.81 ===============

Item was changed:
+ ----- Method: LiteralDictionary>>literalEquality:and: (in category 'testing') -----
- ----- Method: LiteralDictionary>>literalEquality:and: (in category 'as yet unclassified') -----
  literalEquality: x and: y
+ "Check if two literals should be considered equal and reduced to a single literal.
+ Delegate this task to the literal themselves, they are aware of their peculiarities and know how to behave."
+
+ ^ x literalEqual: y
-
- ^ (x class = Array and: [y class = Array]) ifTrue: [
- self arrayEquality: x and: y.
- ] ifFalse: [
- (x class == y class) and: [x = y]
- ].
  !

Item was removed:
- ----- Method: LiteralDictionary>>arrayEquality:and: (in category 'as yet unclassified') -----
- arrayEquality: x and: y
-
- x size = y size ifFalse: [^ false].
- x with: y do: [:e1 :e2 |
- (self literalEquality: e1 and: e2) ifFalse: [^ false]
- ].
- ^true.
- !