blob: 71782ece16de70c9335a528da8c3fec52b33e320 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
discard """
output: "Exit 1\nExit 2"
matrix: "--gc:refc; --gc:arc; --gc:orc"
target: "c"
"""
when compileOption("gc", "refc") or not defined(openbsd):
# xxx openbsd failed, see tgc.nim
import coro
var coro1: CoroutineRef
proc testCoroutine1() =
for i in 0..<10:
suspend(0)
echo "Exit 1"
proc testCoroutine2() =
coro1.wait()
echo "Exit 2"
coro1 = coro.start(testCoroutine1)
coro.start(testCoroutine2)
run()
else:
# workaround
echo "Exit 1"
echo "Exit 2"
|