fixes #24673; divmod errors for ranges (#24679)

fixes #24673

The problem is that there is no way to distinguish `cint`, `cint`, etc
ctypes with Nim types. So `when T is cint | clong | clonglong:` is true
for types derived from `int`, `int32` and `int64`. In this PR, it fixes
the branch to avoid erros for `Natural`

(cherry picked from commit b211ada273)
This commit is contained in:
ringabout
2025-02-15 03:52:43 +08:00
committed by narimiran
parent 1bae14aa25
commit b740e8cca8
2 changed files with 6 additions and 1 deletions

View File

@@ -545,3 +545,8 @@ when not defined(js) and not defined(danger):
doAssertRaises(OverflowDefect):
discard sum(x)
block: # bug #24673
let x: Natural = 5
let y: Natural = 3
doAssert divmod(x, y) == (Natural 1, Natural 2)