void main()

in LibTest/ffi/IntPtr/IntPtr_A01_t02.dart [14:58]


void main() {
  Pointer<IntPtr> p1 = calloc<IntPtr>();
  try {
    if (sizeOf<IntPtr>() == 4) {
      Pointer<Int32> p2 = new Pointer<Int32>.fromAddress(p1.address);
      p2.value = 42;
      Expect.equals(42, p1.value);
      p2.value = -42;
      Expect.equals(-42, p1.value);
      p2.value = 32768;
      Expect.equals(32768, p1.value);
      p2.value = -32768;
      Expect.equals(-32768, p1.value);
      p2.value = 2147483647;
      Expect.equals(2147483647, p1.value);
      p2.value = 2147483648;
      Expect.equals(-2147483648, p1.value);
      p2.value = -2147483649;
      Expect.equals(2147483647, p1.value);
    } else {
      Pointer<Int64> p2 = new Pointer<Int64>.fromAddress(p1.address);
      Expect.equals(0, p1.value);
      p2.value = 42;
      Expect.equals(42, p1.value);
      p2.value = -42;
      Expect.equals(-42, p1.value);
      p2.value = 32768;
      Expect.equals(32768, p1.value);
      p2.value = -32768;
      Expect.equals(-32768, p1.value);
      p2.value = 2147483648;
      Expect.equals(2147483648, p1.value);
      p2.value = -2147483649;
      Expect.equals(-2147483649, p1.value);
      p2.value = 0x7FFFFFFFFFFFFFFF;
      Expect.equals(9223372036854775807, p1.value);
      p2.value = 0xFFFFFFFFFFFFFFFF;
      Expect.equals(-1, p1.value);
      p2.value = -9223372036854775808;
      Expect.equals(-9223372036854775808, p1.value);
    }
  } finally {
    calloc.free(p1);
  }
}