mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-20 22:35:24 +00:00
fixes #7153
This commit is contained in:
@@ -288,7 +288,9 @@ proc semArray(c: PContext, n: PNode, prev: PType): PType =
|
||||
var indxB = indx
|
||||
if indxB.kind in {tyGenericInst, tyAlias, tySink}: indxB = lastSon(indxB)
|
||||
if indxB.kind notin {tyGenericParam, tyStatic, tyFromExpr}:
|
||||
if not isOrdinalType(indxB):
|
||||
if indxB.skipTypes({tyRange}).kind in {tyUInt, tyUInt64}:
|
||||
discard
|
||||
elif not isOrdinalType(indxB):
|
||||
localError(n.sons[1].info, errOrdinalTypeExpected)
|
||||
elif enumHasHoles(indxB):
|
||||
localError(n.sons[1].info, errEnumXHasHoles,
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
discard """
|
||||
output: '''0
|
||||
0'''
|
||||
"""
|
||||
|
||||
# test another strange bug ... (I hate this compiler; it is much too buggy!)
|
||||
|
||||
proc putEnv(key, val: string) =
|
||||
@@ -11,3 +16,16 @@ proc putEnv(key, val: string) =
|
||||
env[len(key)] = '='
|
||||
for i in 0..len(val)-1:
|
||||
env[len(key)+1+i] = val[i]
|
||||
|
||||
# bug #7153
|
||||
const
|
||||
UnsignedConst = 1024'u
|
||||
type
|
||||
SomeObject* = object
|
||||
s1: array[UnsignedConst, uint32]
|
||||
|
||||
var
|
||||
obj: SomeObject
|
||||
|
||||
echo obj.s1[0]
|
||||
echo obj.s1[0u]
|
||||
|
||||
Reference in New Issue
Block a user