Showing with 10 additions and 5 deletions.
  1. +8 −3 src/rt/typeinfo/ti_AC.d
  2. +2 −2 src/rt/typeinfo/ti_C.d
11 changes: 8 additions & 3 deletions src/rt/typeinfo/ti_AC.d
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,14 @@ module rt.typeinfo.ti_AC;

// Object[]

class TypeInfo_AC : TypeInfo
// generate typeid(Object[]).init
enum tid = typeid(Object[]);

class TypeInfo_AC : TypeInfo_Array
{
override hash_t getHash(in void* p)
{ Object[] s = *cast(Object[]*)p;
{
Object[] s = *cast(Object[]*)p;
hash_t hash = 0;

foreach (Object o; s)
Expand Down Expand Up @@ -83,7 +87,7 @@ class TypeInfo_AC : TypeInfo
}
return c < 0 ? -1 : c > 0 ? 1 : 0;
}

/+
override size_t tsize()
{
return (Object[]).sizeof;
Expand All @@ -110,4 +114,5 @@ class TypeInfo_AC : TypeInfo
//arg2 = typeid(void*);
return 0;
}
+/
}
4 changes: 2 additions & 2 deletions src/rt/typeinfo/ti_C.d
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ module rt.typeinfo.ti_C;

// Object

class TypeInfo_C : TypeInfo
/+class TypeInfo_C : TypeInfo
{
override hash_t getHash(in void* p)
{
Expand Down Expand Up @@ -61,4 +61,4 @@ class TypeInfo_C : TypeInfo
{
return 1;
}
}
}+/