Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Clyybber authored Apr 23, 2020
1 parent 66db9de commit eca8f1d
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 0 deletions.
22 changes: 22 additions & 0 deletions tests/effects/teffects9.nim
Original file line number Diff line number Diff line change
@@ -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()
13 changes: 13 additions & 0 deletions tests/generics/tgeneric0.nim
Original file line number Diff line number Diff line change
Expand Up @@ -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

10 changes: 10 additions & 0 deletions tests/notnil/tmust_compile.nim
Original file line number Diff line number Diff line change
Expand Up @@ -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)

0 comments on commit eca8f1d

Please sign in to comment.