summary refs log tree commit diff stats
path: root/tests/notnil/tparse.nim
blob: 5c938ff04f62d8e61d13e7e59d5e45479afd4207 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# issue #16324

{.push experimental: "notnil".}

block:
  type Foo = ref object
    value: int
    
  proc newFoo1(): Foo not nil =               # This compiles
    return Foo(value: 1)
    
  proc newFoo2(): Foo not nil {.inline.} =    # This does not
    return Foo(value: 1)

  doAssert newFoo1().value == 1
  doAssert newFoo2().value == 1

{.pop.}