1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- discard """
- matrix: "--mm:arc; --mm:orc"
- """
- import std/macros
- import std/streams
- # bug #22237
- proc iterlines_closure2(f: File | Stream): iterator (): string =
- result = iterator(): string =
- for line in f.lines:
- if line.len == 0:
- break
- yield line
- proc test() =
- let f = newStringStream("""
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- """)
- while not f.atEnd():
- let iterator_inst = iterlines_closure2(f)
- for item in iterator_inst(): # Fails with "SIGSEGV: Illegal storage access. (Attempt to read from nil?)"
- discard
- test()
- # bug #21160
- import sequtils
- iterator allMoves(fls: seq[int]): seq[int] =
- yield fls
- proc neighbors(flrs: seq[int]): iterator: seq[int] =
- return iterator(): seq[int] =
- for flrs2 in allMoves(flrs):
- yield flrs2
- for flrs3 in allMoves(flrs2):
- yield flrs3
- let f = @[1]
- for _ in neighbors(f):
- discard
- for _ in neighbors(f):
- discard
|