disable sink openarray

This commit is contained in:
ringabout
2025-03-14 20:21:34 +08:00
parent fb93295344
commit 7b03b8a618
4 changed files with 6 additions and 4 deletions

View File

@@ -154,7 +154,8 @@ proc typeAllowedAux(marker: var IntSet, typ: PType, kind: TSymKind,
result = typeAllowedAux(marker, t.elementType, kind, c, flags+{taIsOpenArray})
of tySink:
# you cannot nest openArrays/sinks/etc.
if kind != skParam or taIsOpenArray in flags or t.elementType.kind in {tySink, tyLent, tyVar}:
# `sink openarray` is not allowed
if kind != skParam or taIsOpenArray in flags or t.elementType.kind in {tySink, tyLent, tyVar, tyOpenArray, tyVarargs}:
result = t
else:
result = typeAllowedAux(marker, t.elementType, kind, c, flags)