mirror of
https://github.com/nim-lang/Nim.git
synced 2026-08-28 09:31:38 +00:00
default threads on (#19368)
* default threads on * make rst gcsafe * ignore threads option for nimscript * threads off * use createShared for threads * test without threads * avr threds off * avr threads off * async threads off * threads off * fix ci * restore option * make CI pleased * fix ic tests * Update config.nims * add changelog * Update changelog.md Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
This commit is contained in:
@@ -26,6 +26,8 @@ becomes an alias for `addr`.
|
||||
|
||||
- The `gc:v2` option is removed.
|
||||
|
||||
- The `threads:on` option becomes the default.
|
||||
|
||||
## Standard library additions and changes
|
||||
|
||||
[//]: # "Changes:"
|
||||
|
||||
@@ -17,6 +17,8 @@ cc = gcc
|
||||
hint[LineTooLong]=off
|
||||
#hint[XDeclaredButNotUsed]=off
|
||||
|
||||
threads:on
|
||||
|
||||
# Examples of how to setup a cross-compiler:
|
||||
# Nim can target architectures and OSes different than the local host
|
||||
# Syntax: <arch>.<os>.gcc.exe = "<compiler executable>"
|
||||
|
||||
@@ -59,10 +59,10 @@ proc runBasicDLLTest(c, r: var TResults, cat: Category, options: string) =
|
||||
var test2 = makeTest("tests/dll/server.nim", options & " --threads:on" & rpath, cat)
|
||||
test2.spec.action = actionCompile
|
||||
testSpec c, test2
|
||||
var test3 = makeTest("lib/nimhcr.nim", options & " --outdir:tests/dll" & rpath, cat)
|
||||
var test3 = makeTest("lib/nimhcr.nim", options & " --threads:off --outdir:tests/dll" & rpath, cat)
|
||||
test3.spec.action = actionCompile
|
||||
testSpec c, test3
|
||||
var test4 = makeTest("tests/dll/visibility.nim", options & " --app:lib" & rpath, cat)
|
||||
var test4 = makeTest("tests/dll/visibility.nim", options & " --threads:off --app:lib" & rpath, cat)
|
||||
test4.spec.action = actionCompile
|
||||
testSpec c, test4
|
||||
|
||||
@@ -77,13 +77,13 @@ proc runBasicDLLTest(c, r: var TResults, cat: Category, options: string) =
|
||||
defer: putEnv(libpathenv, libpath)
|
||||
|
||||
testSpec r, makeTest("tests/dll/client.nim", options & " --threads:on" & rpath, cat)
|
||||
testSpec r, makeTest("tests/dll/nimhcr_unit.nim", options & rpath, cat)
|
||||
testSpec r, makeTest("tests/dll/visibility.nim", options & rpath, cat)
|
||||
testSpec r, makeTest("tests/dll/nimhcr_unit.nim", options & " --threads:off" & rpath, cat)
|
||||
testSpec r, makeTest("tests/dll/visibility.nim", options & " --threads:off" & rpath, cat)
|
||||
|
||||
if "boehm" notin options:
|
||||
# force build required - see the comments in the .nim file for more details
|
||||
var hcri = makeTest("tests/dll/nimhcr_integration.nim",
|
||||
options & " --forceBuild --hotCodeReloading:on" & rpath, cat)
|
||||
options & " --threads:off --forceBuild --hotCodeReloading:on" & rpath, cat)
|
||||
let nimcache = nimcacheDir(hcri.name, hcri.options, getTestSpecTarget())
|
||||
let cmd = prepareTestCmd(hcri.spec.getCmd, hcri.name,
|
||||
hcri.options, nimcache, getTestSpecTarget())
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: "nim c --compileOnly --os:standalone --exceptions:quirky -d:noSignalHandler -d:danger $file"
|
||||
cmd: "nim c --compileOnly --os:standalone --exceptions:quirky -d:noSignalHandler -d:danger --threads:off $file"
|
||||
action: "compile"
|
||||
"""
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@ proc `=destroy`(x: var MyObject) =
|
||||
proc `=`(x: var MyObject, y: MyObject) {.error.}
|
||||
|
||||
proc newMyObject(i: int): MyObject =
|
||||
result.p = create(int)
|
||||
result.p = createShared(int)
|
||||
result.p[] = i
|
||||
|
||||
proc test: seq[MyObject] =
|
||||
|
||||
2
tests/ic/config.nims
Normal file
2
tests/ic/config.nims
Normal file
@@ -0,0 +1,2 @@
|
||||
when defined(windows):
|
||||
--threads:off
|
||||
@@ -2,3 +2,4 @@
|
||||
--cpu:avr
|
||||
--os:standalone
|
||||
--compileOnly
|
||||
--threads:off
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
discard """
|
||||
action: compile
|
||||
matrix: "--threads:off"
|
||||
"""
|
||||
|
||||
import asyncdispatch, times
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
discard """
|
||||
targets: "c cpp"
|
||||
matrix: "--gc:orc"
|
||||
matrix: "--gc:orc --threads:off"
|
||||
"""
|
||||
|
||||
import std/[tasks, strformat]
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
matrix: "--gc:none -d:useMalloc"
|
||||
matrix: "--gc:none -d:useMalloc --threads:off"
|
||||
"""
|
||||
# bug #15617
|
||||
let x = 4
|
||||
|
||||
Reference in New Issue
Block a user