diff options
author | konsumlamm <44230978+konsumlamm@users.noreply.github.com> | 2023-08-06 14:24:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-06 14:24:35 +0200 |
commit | 53586d1f32dfe4f2e859178a3e43a6614520763f (patch) | |
tree | d8d96d8148feef252d860cd8f3e0afbf5731e2fd /tests/int/tunsignedconv.nim | |
parent | 67122a9cb6be78b070a71941e74cbcc812633fa6 (diff) | |
download | Nim-53586d1f32dfe4f2e859178a3e43a6614520763f.tar.gz |
Fix some jsgen bugs (#22330)
Fix `succ`, `pred` Fix `genRangeChck` for unsigned ints Fix typo in `dec`
Diffstat (limited to 'tests/int/tunsignedconv.nim')
-rw-r--r-- | tests/int/tunsignedconv.nim | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/tests/int/tunsignedconv.nim b/tests/int/tunsignedconv.nim index c32f85b4d..6c73521d3 100644 --- a/tests/int/tunsignedconv.nim +++ b/tests/int/tunsignedconv.nim @@ -1,15 +1,19 @@ +discard """ + targets: "c cpp js" +""" + # Tests unsigned literals and implicit conversion between uints and ints -var h8:uint8 = 128 -var h16:uint16 = 32768 -var h32:uint32 = 2147483648'u32 -var h64:uint64 = 9223372036854775808'u64 -var foobar:uint64 = 9223372036854775813'u64 # Issue 728 +var h8: uint8 = 128 +var h16: uint16 = 32768 +var h32: uint32 = 2147483648'u32 +var h64: uint64 = 9223372036854775808'u64 +var foobar: uint64 = 9223372036854775813'u64 # Issue 728 -var v8:uint8 = 10 -var v16:uint16 = 10 -var v32:uint32 = 10 -var v64:uint64 = 10 +var v8: uint8 = 10 +var v16: uint16 = 10 +var v32: uint32 = 10 +var v64: uint64 = 10 # u8 + literal produces u8: var a8: uint8 = v8 + 10 @@ -95,3 +99,17 @@ template main() = static: main() main() + +block: + let a = uint64.high + let b = uint32.high + + doAssert a.uint64 == a + doAssert a.uint32 == uint32.high + doAssert a.uint16 == uint16.high + doAssert a.uint8 == uint8.high + + doAssert b.uint64 == b + doAssert b.uint32 == b + doAssert b.uint16 == uint16.high + doAssert b.uint8 == uint8.high |