Index: pkg/compiler/lib/src/closure.dart |
diff --git a/pkg/compiler/lib/src/closure.dart b/pkg/compiler/lib/src/closure.dart |
index 7831c90877471e9cde7239d160de6cdc6576720e..e95088ff5b63d34494380a5de29844d0e24573a6 100644 |
--- a/pkg/compiler/lib/src/closure.dart |
+++ b/pkg/compiler/lib/src/closure.dart |
@@ -615,7 +615,6 @@ class BoxFieldElement extends ElementX |
/// A local variable used encode the direct (uncaptured) references to [this]. |
class ThisLocal extends Local { |
final MemberEntity memberContext; |
- final hashCode = ElementX.newHashCode(); |
ThisLocal(this.memberContext); |
@@ -624,6 +623,15 @@ class ThisLocal extends Local { |
String get name => 'this'; |
ClassEntity get enclosingClass => memberContext.enclosingClass; |
+ |
+ bool operator ==(other) { |
+ return other is ThisLocal && |
+ other.name == name && |
+ other.memberContext == memberContext && |
+ other.enclosingClass == enclosingClass; |
+ } |
+ |
+ int get hashCode => memberContext.hashCode + enclosingClass.hashCode; |
} |
/// Call method of a closure class. |