public static void IntPtrArithmeticOverflow() { var value = new IntPtr(long.MaxValue); Throws <OverflowException>(() => value.AddChecked(new IntPtr(1))); value = new IntPtr(long.MinValue); Throws <OverflowException>(() => value.SubtractChecked(new IntPtr(1))); Equal(new IntPtr(long.MaxValue), value.Subtract(new IntPtr(1))); }