discard """ errormsg: "cannot instantiate B" line: 14 nimout: ''' got: (type int) but expected: (T: string or float) ''' """ type B[T: string|float] = object child: ref B[T] var b: B[int]