public static unsafe int TestStructWithNonBlittableTypes(ref StructWithNonBlittableTypes a) { var checksum = 0; checksum = (checksum * 397) ^ a.a0; checksum = (checksum * 397) ^ a.b0; checksum = (checksum * 397) ^ a.b1; checksum = (checksum * 397) ^ (a.d0 ? 10 : 0); checksum = (checksum * 397) ^ a.a1; checksum = (checksum * 397) ^ a.b1; checksum = (checksum * 397) ^ a.c1; checksum = (checksum * 397) ^ (a.d1 ? 0 : 7); checksum = (checksum * 397) ^ a.Check; return(checksum); }
public static int TestStructWithNonBlittableTypesOffset(ref StructWithNonBlittableTypes a) { return(Unsafe.ByteOffset(ref a.a0, ref a.a1).ToInt32()); }