1.1 --- a/src/Array.h Sat Aug 04 23:58:23 2012 -0700
1.2 +++ b/src/Array.h Sun Aug 05 00:31:20 2012 -0700
1.3 @@ -109,25 +109,18 @@
1.4 class ArrayMap : public Map
1.5 {
1.6 Barriered<Type> type_;
1.7 - Barriered<ArrayMap> contained_;
1.8
1.9 public:
1.10 - static ArrayMap *New(Zone *zone, Handle<Type> type, Handle<ArrayMap> contained);
1.11 + static ArrayMap *New(Zone *zone, Handle<Type> type);
1.12
1.13 Type *type() {
1.14 return type_;
1.15 }
1.16 - ArrayMap *contained() {
1.17 - return contained_;
1.18 - }
1.19
1.20 // GC Descriptor.
1.21 static inline size_t offsetOfType() {
1.22 return OFFSETOF(ArrayMap, type_);
1.23 }
1.24 - static inline size_t offsetOfContained() {
1.25 - return OFFSETOF(ArrayMap, contained_);
1.26 - }
1.27 // End GC Descriptor.
1.28
1.29 static ArrayMap *cast(Object *obj) {
1.30 @@ -155,7 +148,7 @@
1.31 inline Object **
1.32 Array::objVec()
1.33 {
1.34 - assert(type()->levels() > 1);
1.35 + assert(type()->contained()->isTraceable());
1.36 return reinterpret_cast<Object **>(vec());
1.37 }
1.38