diff options
author | ringabout <43030857+ringabout@users.noreply.github.com> | 2023-06-07 03:22:07 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-06 21:22:07 +0200 |
commit | 0f3d6b5a52981cc8df49120a770c20152d75ee2d (patch) | |
tree | 8f631ff744f3a257759eeeb2348e18b591661682 /lib | |
parent | 7ca55f7de6a5f81ef9c7a546bdd9e676a22617ed (diff) | |
download | Nim-0f3d6b5a52981cc8df49120a770c20152d75ee2d.tar.gz |
small fixes for atomicArc (#22017)
* small fixes for atomicArc * Update lib/system/arc.nim
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pure/asynchttpserver.nim | 2 | ||||
-rw-r--r-- | lib/pure/coro.nim | 2 | ||||
-rw-r--r-- | lib/pure/json.nim | 2 | ||||
-rw-r--r-- | lib/pure/marshal.nim | 4 | ||||
-rw-r--r-- | lib/system.nim | 8 | ||||
-rw-r--r-- | lib/system/cellsets.nim | 4 | ||||
-rw-r--r-- | lib/system/osalloc.nim | 2 |
7 files changed, 12 insertions, 12 deletions
diff --git a/lib/pure/asynchttpserver.nim b/lib/pure/asynchttpserver.nim index c09fe35ca..9b369c4bc 100644 --- a/lib/pure/asynchttpserver.nim +++ b/lib/pure/asynchttpserver.nim @@ -187,7 +187,7 @@ proc processRequest( # \n request.headers.clear() request.body = "" - when defined(gcArc) or defined(gcOrc): + when defined(gcArc) or defined(gcOrc) or defined(gcAtomicArc): request.hostname = address else: request.hostname.shallowCopy(address) diff --git a/lib/pure/coro.nim b/lib/pure/coro.nim index 3b9bba59b..7f0f551e6 100644 --- a/lib/pure/coro.nim +++ b/lib/pure/coro.nim @@ -37,7 +37,7 @@ when defined(nimPreviewSlimSystem): import std/assertions const defaultStackSize = 512 * 1024 -const useOrcArc = defined(gcArc) or defined(gcOrc) +const useOrcArc = defined(gcArc) or defined(gcOrc) or defined(gcAtomicArc) when useOrcArc: proc nimGC_setStackBottom*(theStackBottom: pointer) = discard diff --git a/lib/pure/json.nim b/lib/pure/json.nim index b68ddd660..2e448dba7 100644 --- a/lib/pure/json.nim +++ b/lib/pure/json.nim @@ -856,7 +856,7 @@ proc parseJson(p: var JsonParser; rawIntegers, rawFloats: bool, depth = 0): Json case p.tok of tkString: # we capture 'p.a' here, so we need to give it a fresh buffer afterwards: - when defined(gcArc) or defined(gcOrc): + when defined(gcArc) or defined(gcOrc) or defined(gcAtomicArc): result = JsonNode(kind: JString, str: move p.a) else: result = JsonNode(kind: JString) diff --git a/lib/pure/marshal.nim b/lib/pure/marshal.nim index 848d7e3fb..7c092973f 100644 --- a/lib/pure/marshal.nim +++ b/lib/pure/marshal.nim @@ -304,7 +304,7 @@ proc store*[T](s: Stream, data: sink T) = var stored = initIntSet() var d: T - when defined(gcArc) or defined(gcOrc): + when defined(gcArc) or defined(gcOrc)or defined(gcAtomicArc): d = data else: shallowCopy(d, data) @@ -333,7 +333,7 @@ proc `$$`*[T](x: sink T): string = else: var stored = initIntSet() var d: T - when defined(gcArc) or defined(gcOrc): + when defined(gcArc) or defined(gcOrc) or defined(gcAtomicArc): d = x else: shallowCopy(d, x) diff --git a/lib/system.nim b/lib/system.nim index b0d900076..3a39da32e 100644 --- a/lib/system.nim +++ b/lib/system.nim @@ -325,7 +325,7 @@ proc low*(x: string): int {.magic: "Low", noSideEffect.} ## See also: ## * `high(string) <#high,string>`_ -when not defined(gcArc) and not defined(gcOrc): +when not defined(gcArc) and not defined(gcOrc) and not defined(gcAtomicArc): proc shallowCopy*[T](x: var T, y: T) {.noSideEffect, magic: "ShallowCopy".} ## Use this instead of `=` for a `shallow copy`:idx:. ## @@ -360,7 +360,7 @@ when defined(nimHasDup): proc `=sink`*[T](x: var T; y: T) {.inline, nodestroy, magic: "Asgn".} = ## Generic `sink`:idx: implementation that can be overridden. - when defined(gcArc) or defined(gcOrc): + when defined(gcArc) or defined(gcOrc) or defined(gcAtomicArc): x = y else: shallowCopy(x, y) @@ -2336,7 +2336,7 @@ when compileOption("rangechecks"): else: template rangeCheck*(cond) = discard -when not defined(gcArc) and not defined(gcOrc): +when not defined(gcArc) and not defined(gcOrc) and not defined(gcAtomicArc): proc shallow*[T](s: var seq[T]) {.noSideEffect, inline.} = ## Marks a sequence `s` as `shallow`:idx:. Subsequent assignments will not ## perform deep copies of `s`. @@ -2393,7 +2393,7 @@ when hasAlloc or defined(nimscript): setLen(x, xl+item.len) var j = xl-1 while j >= i: - when defined(gcArc) or defined(gcOrc): + when defined(gcArc) or defined(gcOrc) or defined(gcAtomicArc): x[j+item.len] = move x[j] else: shallowCopy(x[j+item.len], x[j]) diff --git a/lib/system/cellsets.nim b/lib/system/cellsets.nim index a0f1fabf9..92036c226 100644 --- a/lib/system/cellsets.nim +++ b/lib/system/cellsets.nim @@ -42,7 +42,7 @@ Complete traversal is done in this way:: ]# -when defined(gcOrc) or defined(gcArc): +when defined(gcOrc) or defined(gcArc) or defined(gcAtomicArc): type PCell = Cell @@ -78,7 +78,7 @@ type head: PPageDesc data: PPageDescArray -when defined(gcOrc) or defined(gcArc): +when defined(gcOrc) or defined(gcArc) or defined(gcAtomicArc): discard else: include cellseqs_v1 diff --git a/lib/system/osalloc.nim b/lib/system/osalloc.nim index 925e98ed3..201be8540 100644 --- a/lib/system/osalloc.nim +++ b/lib/system/osalloc.nim @@ -29,7 +29,7 @@ const doNotUnmap = not (defined(amd64) or defined(i386)) or when defined(nimAllocPagesViaMalloc): - when not defined(gcArc) and not defined(gcOrc): + when not defined(gcArc) and not defined(gcOrc) and not defined(gcAtomicArc): {.error: "-d:nimAllocPagesViaMalloc is only supported with --gc:arc or --gc:orc".} proc osTryAllocPages(size: int): pointer {.inline.} = |