From 683a1213dbfa587505765e82b3678e6be0943dd7 Mon Sep 17 00:00:00 2001 From: ringabout <43030857+ringabout@users.noreply.github.com> Date: Sat, 4 Nov 2023 15:52:30 +0800 Subject: [PATCH] fixes #22860; suppress `AnyEnumConv` warning when iterating over set (#22904) fixes #22860 (cherry picked from commit af556841ac57655f5b2ffe34de401a981b6eaf94) --- lib/system/iterators.nim | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/system/iterators.nim b/lib/system/iterators.nim index e511f25087..125bee98ff 100644 --- a/lib/system/iterators.nim +++ b/lib/system/iterators.nim @@ -61,7 +61,10 @@ iterator items*[T](a: set[T]): T {.inline.} = ## able to hold). var i = low(T).int while i <= high(T).int: - if T(i) in a: yield T(i) + when T is enum and not defined(js): + if cast[T](i) in a: yield cast[T](i) + else: + if T(i) in a: yield T(i) unCheckedInc(i) iterator items*(a: cstring): char {.inline.} =