Index: runtime/vm/raw_object.h |
diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h |
index 67520f58a96937cd6a608905302b7f91702c8eb0..f4b07eb8e0d8846be9418a2ed12efd705a0b3e63 100644 |
--- a/runtime/vm/raw_object.h |
+++ b/runtime/vm/raw_object.h |
@@ -285,7 +285,8 @@ class RawObject { |
private: |
// The actual unscaled bit field used within the tag field. |
- class SizeBits : public BitField<intptr_t, kSizeTagPos, kSizeTagSize> {}; |
+ class SizeBits : |
+ public BitField<uword, intptr_t, kSizeTagPos, kSizeTagSize> {}; |
static intptr_t SizeToTagValue(intptr_t size) { |
ASSERT(Utils::IsAligned(size, kObjectAlignment)); |
@@ -297,7 +298,7 @@ class RawObject { |
}; |
class ClassIdTag : |
- public BitField<intptr_t, kClassIdTagPos, kClassIdTagSize> {}; // NOLINT |
+ public BitField<uword, intptr_t, kClassIdTagPos, kClassIdTagSize> {}; |
bool IsWellFormed() const { |
uword value = reinterpret_cast<uword>(this); |
@@ -497,18 +498,18 @@ class RawObject { |
private: |
uword tags_; // Various object tags (bits). |
- class WatchedBit : public BitField<bool, kWatchedBit, 1> {}; |
+ class WatchedBit : public BitField<uword, bool, kWatchedBit, 1> {}; |
- class MarkBit : public BitField<bool, kMarkBit, 1> {}; |
+ class MarkBit : public BitField<uword, bool, kMarkBit, 1> {}; |
- class RememberedBit : public BitField<bool, kRememberedBit, 1> {}; |
+ class RememberedBit : public BitField<uword, bool, kRememberedBit, 1> {}; |
- class CanonicalObjectTag : public BitField<bool, kCanonicalBit, 1> {}; |
+ class CanonicalObjectTag : public BitField<uword, bool, kCanonicalBit, 1> {}; |
- class VMHeapObjectTag : public BitField<bool, kVMHeapObjectBit, 1> {}; |
+ class VMHeapObjectTag : public BitField<uword, bool, kVMHeapObjectBit, 1> {}; |
class ReservedBits : public |
- BitField<intptr_t, kReservedTagPos, kReservedTagSize> {}; // NOLINT |
+ BitField<uword, intptr_t, kReservedTagPos, kReservedTagSize> {}; |
// TODO(koda): After handling tags_, return const*, like Object::raw_ptr(). |
RawObject* ptr() const { |
@@ -1274,8 +1275,8 @@ class RawLocalVarDescriptors : public RawObject { |
kMaxIndex = (1 << (kIndexSize - 1)) - 1, |
}; |
- class IndexBits : public BitField<int32_t, kIndexPos, kIndexSize> {}; |
- class KindBits : public BitField<int8_t, kKindPos, kKindSize>{}; |
+ class IndexBits : public BitField<int32_t, int32_t, kIndexPos, kIndexSize> {}; |
+ class KindBits : public BitField<int32_t, int8_t, kKindPos, kKindSize>{}; |
struct VarInfo { |
int32_t index_kind; // Bitfield for slot index on stack or in context, |