summary refs log tree commit diff stats
path: root/tests
diff options
context:
space:
mode:
authorTimothee Cour <timothee.cour2@gmail.com>2021-01-14 16:09:58 -0800
committerGitHub <noreply@github.com>2021-01-15 01:09:58 +0100
commit52cf7280019c943dd7df33d0dd693931e6a116ee (patch)
tree17453e07c4b16ceeb96c35c30cb44decae36623c /tests
parent554fe8f88fc6d146b17726acbab415f77e346a72 (diff)
downloadNim-52cf7280019c943dd7df33d0dd693931e6a116ee.tar.gz
followup for #16717: minimized example + improved comment (#16721)
Diffstat (limited to 'tests')
-rw-r--r--tests/assign/tobject_assign.nim76
1 files changed, 44 insertions, 32 deletions
diff --git a/tests/assign/tobject_assign.nim b/tests/assign/tobject_assign.nim
index dbc1f2316..8e39ead53 100644
--- a/tests/assign/tobject_assign.nim
+++ b/tests/assign/tobject_assign.nim
@@ -1,37 +1,49 @@
-import std/[options, tables, times]
+# bug #16706
 
-type
-  Data* = object
-    shifts*: OrderedTable[int64, Shift]
-    balance*: float
+block: # reduced example
+  type
+    A = object of RootObj
+      a0: string
+    B = object
+      b0: seq[A]
+  var c = newSeq[A](2)
+  var d = B(b0: c)
 
-  Shift* = object
-    quoted*: bool
-    date*: DateTime
-    description*: string
-    start*: Option[DateTime]
-    finish*: Option[DateTime]
-    breakTime*: Option[Duration]
-    rate*: float
-    qty: Option[float]
-    id*: int64
+when true: # original example
+  import std/[options, tables, times]
 
-let shift = Shift(
-  quoted: true,
-  date: parse("2000-01-01", "yyyy-MM-dd"),
-  description: "abcdef",
-  start: none(DateTime),
-  finish: none(DateTime),
-  breakTime: none(Duration),
-  rate: 462.11,
-  qty: some(10.0),
-  id: getTime().toUnix()
-)
+  type
+    Data* = object
+      shifts*: OrderedTable[int64, Shift]
+      balance*: float
 
-var shifts: OrderedTable[int64, Shift]
-shifts[shift.id] = shift
+    Shift* = object
+      quoted*: bool
+      date*: DateTime
+      description*: string
+      start*: Option[DateTime]
+      finish*: Option[DateTime]
+      breakTime*: Option[Duration]
+      rate*: float
+      qty: Option[float]
+      id*: int64
 
-discard Data(
-  shifts: shifts,
-  balance: 0.00
-)
+  let shift = Shift(
+    quoted: true,
+    date: parse("2000-01-01", "yyyy-MM-dd"),
+    description: "abcdef",
+    start: none(DateTime),
+    finish: none(DateTime),
+    breakTime: none(Duration),
+    rate: 462.11,
+    qty: some(10.0),
+    id: getTime().toUnix()
+  )
+
+  var shifts: OrderedTable[int64, Shift]
+  shifts[shift.id] = shift
+
+  discard Data(
+    shifts: shifts,
+    balance: 0.00
+  )