Index: runtime/vm/raw_object.h |
diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h |
index 4362f59279bc2ca6c707c84182e0d413a3a80a40..ff8a4135b9c8400c376222e8942cdf4f777b0047 100644 |
--- a/runtime/vm/raw_object.h |
+++ b/runtime/vm/raw_object.h |
@@ -919,8 +919,7 @@ class RawClosureData : public RawObject { |
RawObject** to_snapshot() { |
return reinterpret_cast<RawObject**>(&ptr()->closure_); |
} |
- RawObject* hash_; |
- RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->hash_); } |
+ RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->closure_); } |
friend class Function; |
}; |
@@ -1799,16 +1798,20 @@ class RawClosure : public RawInstance { |
return reinterpret_cast<RawObject**>(&ptr()->instantiator_type_arguments_); |
} |
- // No instance fields should be declared before the following 4 fields whose |
+ // No instance fields should be declared before the following fields whose |
// offsets must be identical in Dart and C++. |
- // These 4 fields are also declared in the Dart source of class _Closure. |
+ // The following fields are also declared in the Dart source of class |
+ // _Closure. |
RawTypeArguments* instantiator_type_arguments_; |
RawTypeArguments* function_type_arguments_; |
RawFunction* function_; |
RawContext* context_; |
+ RawInteger* cached_hash_code_; |
rmacnak
2017/07/19 01:00:24
RawSmi* hash_;
Compare other hash fields on Strin
alexmarkov
2017/07/19 17:54:19
Done.
|
- RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->context_); } |
+ RawObject** to() { |
+ return reinterpret_cast<RawObject**>(&ptr()->cached_hash_code_); |
+ } |
// Note that instantiator_type_arguments_ and function_type_arguments_ are |
// used to instantiate the signature of function_ when this closure is |