From 0cb5adb49496d971742bd4fdfe98ac3db4dedb94 Mon Sep 17 00:00:00 2001 From: jlp765 Date: Tue, 1 Nov 2016 13:36:03 +1000 Subject: [PATCH 1/2] Add nill value handling for seq/sets --- lib/system.nim | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/system.nim b/lib/system.nim index 8648e23b42..7ec74250f5 100644 --- a/lib/system.nim +++ b/lib/system.nim @@ -2334,7 +2334,8 @@ proc collectionToString[T: set | seq](x: T, b, e: string): string = var firstElement = true for value in items(x): if not firstElement: result.add(", ") - result.add($value) + if value.isNil: result.add "nil" + else: result.add($value) firstElement = false result.add(e) From 55b28f86e1fe0b7dc151f93692a987b4a48e98ac Mon Sep 17 00:00:00 2001 From: jlp765 Date: Tue, 1 Nov 2016 13:41:31 +1000 Subject: [PATCH 2/2] add test: echo a seq with a nil value --- tests/stdlib/tnilecho.nim | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 tests/stdlib/tnilecho.nim diff --git a/tests/stdlib/tnilecho.nim b/tests/stdlib/tnilecho.nim new file mode 100644 index 0000000000..147b5e4925 --- /dev/null +++ b/tests/stdlib/tnilecho.nim @@ -0,0 +1,2 @@ +var x = @["1", nil, "3"] +doAssert $x == "@[1, nil, 3]"