module arrimpl; extern(C) void[] _d_arraycopy(size_t size, void[] from, void[] to) nothrow @nogc { auto fromBytes = cast(ubyte[])from; auto toBytes = cast(ubyte[])to; foreach(size_t i; 0 .. size) toBytes[i] = fromBytes[i]; return to; } extern(C) int _adEq2(void[] a1, void[] a2, TypeInfo ti) { if(a1.length != a2.length) return 0; if(!ti.equals(&a1, &a2)) return 0; return 1; }