parent
66db9de714
commit
eca8f1d79f
3 changed files with 45 additions and 0 deletions
22
tests/effects/teffects9.nim
Normal file
22
tests/effects/teffects9.nim
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
discard """
|
||||
errormsg: "can raise an unlisted exception: ref Exception"
|
||||
line: 16
|
||||
"""
|
||||
|
||||
# bug #8481
|
||||
|
||||
type
|
||||
ParentObj = ref object of RootObj
|
||||
DerivedObj = ref object of ParentObj
|
||||
|
||||
method doSome(o: ParentObj) {.base, raises: [].} =
|
||||
discard
|
||||
|
||||
method doSome(o: DerivedObj) =
|
||||
raise newException(Exception, "oops, this raised")
|
||||
|
||||
proc thisRaises() {.raises: [].} =
|
||||
let o = new(DerivedObj)
|
||||
o.doSome()
|
||||
|
||||
thisRaises()
|
||||
|
|
@ -140,3 +140,16 @@ var res = Resource(name: "Resource 1")
|
|||
|
||||
(proc (r: typeof(res)) =
|
||||
echo r[])(res)
|
||||
|
||||
# bug #4061
|
||||
|
||||
type List[T] = object
|
||||
e: T
|
||||
n: ptr List[T]
|
||||
|
||||
proc zip*[T,U](xs: List[T], ys: List[U]): List[(T,U)] = discard
|
||||
|
||||
proc unzip*[T,U](xs: List[tuple[t: T, u: U]]): (List[T], List[U]) = discard
|
||||
|
||||
proc unzip2*[T,U](xs: List[(T,U)]): (List[T], List[U]) = discard
|
||||
|
||||
|
|
|
|||
|
|
@ -63,3 +63,13 @@ proc parse(cts: CTS, jn: JsonNode) =
|
|||
|
||||
proc p(x: proc(){.closure.} not nil) = discard
|
||||
p(proc(){.closure.} = discard)
|
||||
|
||||
# bug #6490
|
||||
|
||||
proc p2(a: proc()) =
|
||||
if a.isNil:
|
||||
raise newException(ValueError, "a is nil")
|
||||
else:
|
||||
let b: proc() not nil = a
|
||||
|
||||
p2(writeStackTrace)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue