Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

62 lines
820 B
C#

using System;
class X {
public static int Main()
{
if (! Test1 ()) return 1;
if (! Test2 ()) return 2;
if (! Test3 ()) return 3;
return 0;
}
static bool Test1 ()
{
byte num1 = 105;
byte num2 = 150;
// should generate OverflowException
try {
checked {
byte sum = (byte) (num1 - num2);
}
return false;
} catch (OverflowException) {
return true;
}
}
static bool Test2 ()
{
long l = long.MinValue;
// should generate OverflowException
try {
checked {
l = - l;
}
return false;
} catch (OverflowException) {
return true;
}
}
static bool Test3 ()
{
int i = int.MinValue;
// should generate OverflowException
try {
checked {
i = - i;
}
return false;
} catch (OverflowException) {
return true;
}
}
}