fix stringify unsigned integer in JS and JS VM (#17086)

* fix js unsigned integer

* better
This commit is contained in:
flywind 2021-02-18 13:13:52 -06:00 • committed by GitHub
commit cd274a5ac9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 57 additions and 18 deletions

View file

@ -101,6 +101,31 @@ block: # #14350, #16674, #16686 for JS
doAssert nil1 == cstring("")
doAssert nil2 == cstring("")
block:
block:
let x = -1'i8
let y = uint32(x)
doAssert $y == "4294967295"
block:
let x = -1'i16
let y = uint32(x)
doAssert $y == "4294967295"
block:
let x = -1'i32
let y = uint32(x)
doAssert $y == "4294967295"
block:
let x = 4294967295'u32
doAssert $x == "4294967295"
block:
doAssert $(4294967295'u32) == "4294967295"
proc main()=
block:
@ -124,5 +149,8 @@ proc main()=
doAssert $(0) == "0"
doAssert $uint32.high == "4294967295"
static: main()
main()