mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-19 22:10:33 +00:00
* fixes #20715; range[a..b] inside object variant fails * step one fix * better fix * fixes private fields * mistake
This commit is contained in:
@@ -426,6 +426,36 @@ template main {.dirty.} =
|
||||
let x = default(A)
|
||||
doAssert $x == "(d: Uninitialized DateTime)"
|
||||
|
||||
block: # bug #20715
|
||||
block:
|
||||
type
|
||||
Foo = enum
|
||||
A
|
||||
B
|
||||
|
||||
Bar = object
|
||||
case foo: Foo
|
||||
of A:
|
||||
t: range[-1..2]
|
||||
else: discard
|
||||
|
||||
var d = default(Bar)
|
||||
doAssert d.t == -1
|
||||
|
||||
block:
|
||||
type
|
||||
Foo = enum
|
||||
A
|
||||
B
|
||||
|
||||
Bar = object
|
||||
case foo: Foo
|
||||
of A:
|
||||
t: range[0..2]
|
||||
else: discard
|
||||
|
||||
var d = default(Bar)
|
||||
doAssert d.t == 0
|
||||
|
||||
static: main()
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user