diff options
Diffstat (limited to 'tests/notnil/tnotnil4.nim')
-rw-r--r-- | tests/notnil/tnotnil4.nim | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/notnil/tnotnil4.nim b/tests/notnil/tnotnil4.nim new file mode 100644 index 000000000..c5178f71b --- /dev/null +++ b/tests/notnil/tnotnil4.nim @@ -0,0 +1,23 @@ +discard "" +type + TObj = ref object + +{.experimental: "notnil".} + +proc check(a: TObj not nil) = + echo repr(a) + +proc doit() = + var x : array[0..1, TObj] + + let y = x[0] + if y != nil: + check(y) + +doit() + +# bug #2352 + +proc p(x: proc() {.noconv.} not nil) = discard +p(proc() {.noconv.} = discard) +# Error: cannot prove 'proc () {.noconv.} = discard ' is not nil |