summary refs log tree commit diff stats
path: root/tests/misc/tsemfold.nim
blob: 2ce8d9560f094a7e3953871c4780116b1023c393 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
discard """
  action: run
"""

doAssertRaises(OverflowDefect): discard low(int8) - 1'i8
doAssertRaises(OverflowDefect): discard high(int8) + 1'i8
doAssertRaises(OverflowDefect): discard abs(low(int8))
doAssertRaises(DivByZeroDefect): discard 1 mod 0
doAssertRaises(DivByZeroDefect): discard 1 div 0
doAssertRaises(OverflowDefect): discard low(int8) div -1'i8

doAssertRaises(OverflowDefect): discard -low(int64)
doAssertRaises(OverflowDefect): discard low(int64) - 1'i64
doAssertRaises(OverflowDefect): discard high(int64) + 1'i64

type E = enum eA, eB
doAssertRaises(OverflowDefect): discard eA.pred
doAssertRaises(OverflowDefect): discard eB.succ

doAssertRaises(OverflowDefect): discard low(int8) * -1
doAssertRaises(OverflowDefect): discard low(int64) * -1
doAssertRaises(OverflowDefect): discard high(int8) * 2
doAssertRaises(OverflowDefect): discard high(int64) * 2

doAssert abs(-1) == 1
doAssert 2 div 2 == 1
doAssert 2 * 3 == 6