Deques compilation error fix (#5591)

This commit is contained in:
Dmitriy Fomichev
2017-03-24 02:09:51 +03:00
committed by Andreas Rumpf
parent d4b4cad4ea
commit 268a1f7cfd
2 changed files with 19 additions and 2 deletions

View File

@@ -80,7 +80,7 @@ proc `[]`*[T](deq: Deque[T], i: Natural) : T {.inline.} =
## Access the i-th element of `deq` by order from first to last.
## deq[0] is the first, deq[^1] is the last.
xBoundsCheck(deq, i)
return deq.data[(deq.first + i) and deq.mask]
return deq.data[(deq.head + i) and deq.mask]
proc `[]`*[T](deq: var Deque[T], i: Natural): var T {.inline.} =
## Access the i-th element of `deq` and returns a mutable
@@ -266,4 +266,4 @@ when isMainModule:
foo(1,1)
foo(2,1)
foo(1,5)
foo(3,2)
foo(3,2)

View File

@@ -0,0 +1,17 @@
discard """
output: '''true'''
"""
import deques
proc index(self: Deque[int], idx: Natural): int =
self[idx]
proc main =
var testDeque = initDeque[int]()
testDeque.addFirst(1)
assert testDeque.index(0) == 1
main()
echo "true"