mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-19 05:50:30 +00:00
fix #20248;fix #6215;turns into simple CT error (#21141)
This commit is contained in:
@@ -328,6 +328,8 @@ proc semRange(c: PContext, n: PNode, prev: PType): PType =
|
||||
proc semArrayIndex(c: PContext, n: PNode): PType =
|
||||
if isRange(n):
|
||||
result = semRangeAux(c, n, nil)
|
||||
elif n.kind == nkInfix and n[0].kind == nkIdent and n[0].ident.s == "..<":
|
||||
result = errorType(c)
|
||||
else:
|
||||
let e = semExprWithType(c, n, {efDetermineType})
|
||||
if e.typ.kind == tyFromExpr:
|
||||
|
||||
14
tests/array/t20248.nim
Normal file
14
tests/array/t20248.nim
Normal file
@@ -0,0 +1,14 @@
|
||||
discard """
|
||||
cmd: "nim check --hints:off $file"
|
||||
errormsg: "ordinal type expected; given: Error Type"
|
||||
nimout: '''
|
||||
t20248.nim(10, 36) Error: ordinal type expected; given: Error Type
|
||||
t20248.nim(14, 20) Error: ordinal type expected; given: Error Type
|
||||
'''
|
||||
"""
|
||||
|
||||
type Vec[N: static[int]] = array[0 ..< N, float]
|
||||
|
||||
var v: Vec[32]
|
||||
|
||||
var stuff: array[0 ..< 16, int]
|
||||
Reference in New Issue
Block a user