Updted compilation to handle dictionaries properly.
h3rald h3rald@h3rald.com
Mon, 25 May 2026 14:12:49 +0200
1 files changed,
4 insertions(+),
2 deletions(-)
jump to
M
minpkg/core/parser.nim
→
minpkg/core/parser.nim
@@ -849,6 +849,7 @@ discard getToken(p)
of tkBraceLe: result = newSeq[string](0) var val: MinValue + var valSet = false discard getToken(p) var c = 0 CVARCOUNT.inc@@ -859,7 +860,7 @@ let v = p.parseMinValue(i)
if v.isUnknown: continue c = c+1 - if val.isUnknown: + if not valSet: val = v elif v.kind == minSymbol: let key = v.symVal@@ -867,7 +868,8 @@ if key[0] == ':' or key[0] == '^':
let isLambda = key[0] == '^' let symkey = key[1 .. key.len-1] result.add "i.dset($#, \"$#\", $#.newVal, lambda: $#)" % [dictvar, symkey, $val, $isLambda] - val = MinValue(kind: minUnknown) + # Reset valSet so that is possible to process another value + valSet = false else: raiseInvalid("Invalid dictionary key: " & key) else: