diff options
author | Arne Döring <arne.doering@gmx.net> | 2019-06-19 20:14:54 +0200 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2019-06-19 20:14:54 +0200 |
commit | 1a074fffa421b6cab0357e86d1011cc39eafcc61 (patch) | |
tree | 18d3b67e26bff2fb913284106b14a4cc96272d49 /lib/core | |
parent | ab36ffbeb1bcb0154fa077a5616a3f5466dd5e37 (diff) | |
download | Nim-1a074fffa421b6cab0357e86d1011cc39eafcc61.tar.gz |
change newLit on Seq (#11542)
Diffstat (limited to 'lib/core')
-rw-r--r-- | lib/core/macros.nim | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/core/macros.nim b/lib/core/macros.nim index e8a156572..0e66aad03 100644 --- a/lib/core/macros.nim +++ b/lib/core/macros.nim @@ -748,17 +748,17 @@ proc newLit*[N,T](arg: array[N,T]): NimNode {.compileTime.} = result.add newLit(x) proc newLit*[T](arg: seq[T]): NimNode {.compileTime.} = - var bracket = nnkBracket.newTree + let bracket = nnkBracket.newTree for x in arg: bracket.add newLit(x) - - result = nnkCall.newTree( - nnkBracketExpr.newTree( - nnkAccQuoted.newTree( bindSym"@" ), - getTypeInst( bindSym"T" ) - ), + result = nnkPrefix.newTree( + bindSym"@", bracket ) + if arg.len == 0: + # add type cast for empty seq + var typ = getTypeInst(typeof(arg))[1] + result = newCall(typ,result) proc newLit*[T](s: set[T]): NimNode {.compileTime.} = result = nnkCurly.newTree |