fixes 23823; array static overload - again (#23824)

#23823

(cherry picked from commit 22ba5abd63)
This commit is contained in:
Ryan McConnell
2024-07-11 16:57:17 -04:00
committed by narimiran
parent acd09cec43
commit cc887c23f4
2 changed files with 12 additions and 0 deletions

View File

@@ -1313,6 +1313,8 @@ proc typeRel(c: var TCandidate, f, aOrig: PType,
return isNone
if fRange.rangeHasUnresolvedStatic:
if aRange.kind in {tyGenericParam} and aRange.reduceToBase() == aRange:
return
return inferStaticsInRange(c, fRange, a)
elif c.c.matchedConcept != nil and aRange.rangeHasUnresolvedStatic:
return inferStaticsInRange(c, aRange, f)

View File

@@ -50,3 +50,13 @@ block:
var g: array[32, char]
doAssert p(g)
block: # issue #23823
func p[N,T](a, b: array[N,T]) =
discard
func p[N: static int; T](x, y: array[N, T]) =
discard
var a: array[5, int]
p(a,a)