summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorflywind <xzsflywind@gmail.com>2021-03-08 21:37:52 +0800
committerGitHub <noreply@github.com>2021-03-08 14:37:52 +0100
commitdd8383b10acfc7242a1b60080866c5dc95179246 (patch)
treea682d17cdc3d382b876e192c41f1ec8519804258
parent93cb5d68962155c833b7ec9611c9a6953dcdaf8c (diff)
downloadNim-dd8383b10acfc7242a1b60080866c5dc95179246.tar.gz
add testcase for #12005 (#17278)
* remove unnecessary when statement

* remove outdated codes

* reuse jsffi

* move js json coverage

* close #12005 add testcase

* Update tests/stdlib/tthreadpool.nim

* Update tests/stdlib/tthreadpool.nim

* Update tests/stdlib/tthreadpool.nim

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>

Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
-rw-r--r--tests/stdlib/tthreadpool.nim14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/stdlib/tthreadpool.nim b/tests/stdlib/tthreadpool.nim
new file mode 100644
index 000000000..897c7d173
--- /dev/null
+++ b/tests/stdlib/tthreadpool.nim
@@ -0,0 +1,14 @@
+discard """
+  matrix: "--threads:on --gc:arc"
+  disabled: "freebsd"
+  output: "42"
+"""
+
+from std/threadpool import spawn, `^`, sync
+block: # bug #12005
+  proc doworkok(i: int) {.thread.} = echo i
+  spawn(doworkok(42))
+  sync() # this works when returning void!
+
+  proc doworkbad(i: int): int {.thread.} = i
+  doAssert ^spawn(doworkbad(42)) == 42 # bug was here