blob: 79694a66f77be0d68c51905f17dd8d5f7f4ff78c (
plain) (
tree)
|
|
discard """
nimout: '''##[ValueError, Gen[string]]##
%%[RootEffect]%%
true true'''
"""
import macros
import std / effecttraits
type
Gen[T] = object of CatchableError
x: T
macro m(call: typed): untyped =
echo "##", repr getRaisesList(call[0]), "##"
echo "%%", repr getTagsList(call[0]), "%%"
echo isGcSafe(call[0]), " ", hasNoSideEffects(call[0])
result = call
proc gutenTag() {.tags: RootEffect.} = discard
proc r(inp: int) =
if inp == 0:
raise newException(ValueError, "bah")
elif inp == 1:
raise newException(Gen[string], "bahB")
gutenTag()
m r(2)
|