* followup #17001: improve coverage for tests/openarray/topenarray.nim
This commit is contained in:
parent
190fe36eba
commit
21e60b9a97
1 changed files with 17 additions and 3 deletions
|
|
@ -2,12 +2,26 @@ discard """
|
||||||
targets: "c cpp js"
|
targets: "c cpp js"
|
||||||
"""
|
"""
|
||||||
|
|
||||||
proc pro[T](a: var openArray[T]) = discard
|
proc fn1[T](a: openArray[T]): seq[T] =
|
||||||
|
for ai in a: result.add ai
|
||||||
|
|
||||||
|
proc fn2[T](a: var openArray[T]): seq[T] =
|
||||||
|
for ai in a: result.add ai
|
||||||
|
|
||||||
|
proc fn3[T](a: var openArray[T]) =
|
||||||
|
for i, ai in mpairs(a): ai = i * 10
|
||||||
|
|
||||||
proc main =
|
proc main =
|
||||||
var a = [1,2,3,4,5]
|
var a = [1,2,3,4,5]
|
||||||
|
|
||||||
pro(toOpenArray(a, 1, 3))
|
doAssert fn1(a.toOpenArray(1,3)) == @[2,3,4]
|
||||||
pro(a.toOpenArray(1,3))
|
|
||||||
|
doAssert fn2(toOpenArray(a, 1, 3)) == @[2,3,4]
|
||||||
|
doAssert fn2(a.toOpenArray(1,3)) == @[2,3,4]
|
||||||
|
|
||||||
|
fn3(a.toOpenArray(1,3))
|
||||||
|
when defined(js): discard # xxx bug #15952: `a` left unchanged
|
||||||
|
else: doAssert a == [1, 0, 10, 20, 5]
|
||||||
|
|
||||||
main()
|
main()
|
||||||
|
# static: main() # xxx bug #15952: Error: cannot generate code for: mSlice
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue