Silence several Hint[Performance] warnings (#23003)

With `--mm:arc` one gets the "implicit copy; if possible, rearrange your
program's control flow" `Performance` warnings without these `move`s.
This commit is contained in:
c-blake
2023-11-29 21:36:47 +00:00
committed by GitHub
parent 96513b2506
commit beeacc86ff
4 changed files with 5 additions and 6 deletions

View File

@@ -1232,7 +1232,7 @@ proc responseContent(resp: Response | AsyncResponse): Future[string] {.multisync
## A `HttpRequestError` will be raised if the server responds with a
## client error (status code 4xx) or a server error (status code 5xx).
if resp.code.is4xx or resp.code.is5xx:
raise newException(HttpRequestError, resp.status)
raise newException(HttpRequestError, resp.status.move)
else:
return await resp.bodyStream.readAll()

View File

@@ -234,10 +234,9 @@ func parseList(line: string, list: var seq[string], start: int): int =
while start+i < line.len and line[start + i] notin {'\c', '\l'}:
i += line.skipWhitespace(start + i)
i += line.parseUntil(current, {'\c', '\l', ','}, start + i)
list.add(current)
list.add(move current) # implicit current.setLen(0)
if start+i < line.len and line[start + i] == ',':
i.inc # Skip ,
current.setLen(0)
func parseHeader*(line: string): tuple[key: string, value: seq[string]] =
## Parses a single raw header HTTP line into key value pairs.

View File

@@ -452,7 +452,7 @@ proc getKeyValPair(c: var CfgParser, kind: CfgEventKind): CfgEvent =
if c.tok.kind == tkSymbol:
case kind
of cfgOption, cfgKeyValuePair:
result = CfgEvent(kind: kind, key: c.tok.literal, value: "")
result = CfgEvent(kind: kind, key: c.tok.literal.move, value: "")
else: discard
rawGetTok(c, c.tok)
if c.tok.kind in {tkEquals, tkColon}:
@@ -481,7 +481,7 @@ proc next*(c: var CfgParser): CfgEvent {.rtl, extern: "npc$1".} =
of tkBracketLe:
rawGetTok(c, c.tok)
if c.tok.kind == tkSymbol:
result = CfgEvent(kind: cfgSectionStart, section: c.tok.literal)
result = CfgEvent(kind: cfgSectionStart, section: c.tok.literal.move)
else:
result = CfgEvent(kind: cfgError,
msg: errorStr(c, "symbol expected, but found: " & c.tok.literal))

View File

@@ -138,7 +138,7 @@ proc parseCmdLine*(c: string): seq[string] {.
while i < c.len and c[i] > ' ':
add(a, c[i])
inc(i)
add(result, a)
add(result, move a)
when defined(nimdoc):
# Common forward declaration docstring block for parameter retrieval procs.