diff options
Diffstat (limited to 'tests/vm/tcompiletimerange.nim')
-rw-r--r-- | tests/vm/tcompiletimerange.nim | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/vm/tcompiletimerange.nim b/tests/vm/tcompiletimerange.nim new file mode 100644 index 000000000..cd675b4a3 --- /dev/null +++ b/tests/vm/tcompiletimerange.nim @@ -0,0 +1,28 @@ +discard """ +""" + +# issue #8199 + +const rangesGCHoldEnabled = true # not defined(rangesDisableGCHold) + +type + # A view into immutable array + Range*[T] {.shallow.} = object + when rangesGCHoldEnabled: + gcHold: seq[T] # 0 + start: ptr T # 1 + mLen: int32 # 2 + +type + BytesRange* = Range[byte] + NibblesRange* = object + bytes: BytesRange + +const + zeroBytesRange* = BytesRange() + +proc initNibbleRange*(bytes: BytesRange): NibblesRange = + result.bytes = bytes + +const + zeroNibblesRange* = initNibbleRange(zeroBytesRange) |