diff options
author | ringabout <43030857+ringabout@users.noreply.github.com> | 2023-10-21 00:38:42 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-20 18:38:42 +0200 |
commit | e10878085eaf215a6782cde5c2ea79d4cdf0f40e (patch) | |
tree | 74d47dd7bbb24cb3e79e6c8e875731d1efdb3b2c /tests/misc | |
parent | 27deacecaadd711cbb5a615abba3237925250616 (diff) | |
download | Nim-e10878085eaf215a6782cde5c2ea79d4cdf0f40e.tar.gz |
fixes #22844; uses arrays to store holeyenums for iterations; much more efficient than sets and reasonable for holeyenums (#22845)
fixes #22844
Diffstat (limited to 'tests/misc')
-rw-r--r-- | tests/misc/tconv.nim | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/misc/tconv.nim b/tests/misc/tconv.nim index 5e8eac729..e4a99344a 100644 --- a/tests/misc/tconv.nim +++ b/tests/misc/tconv.nim @@ -2,6 +2,9 @@ discard """ matrix: "--warningAsError:EnumConv --warningAsError:CStringConv" """ +from std/enumutils import items # missing from the example code +from std/sequtils import toSeq + template reject(x) = static: doAssert(not compiles(x)) template accept(x) = @@ -117,4 +120,17 @@ reject: var va = 2 var vb = va.Hole +block: # bug #22844 + type + A = enum + a0 = 2 + a1 = 4 + a2 + B[T] = enum + b0 = 2 + b1 = 4 + + doAssert A.toSeq == [a0, a1, a2] + doAssert B[float].toSeq == [B[float].b0, B[float].b1] + {.pop.} |