1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- discard """
- output: '''
- not deprecated
- not deprecated
- not error
- not error
- '''
- """
- # issue #21724
- block: # deprecated
- {.push warningAsError[Deprecated]: on.}
- type
- SomeObj = object
- hey: bool
- proc hey() {.deprecated: "Shouldn't use this".} = echo "hey"
- proc gen(o: auto) =
- doAssert not compiles(o.hey())
- if o.hey:
- echo "not deprecated"
- gen(SomeObj(hey: true))
- doAssert not (compiles do:
- proc hey(o: SomeObj) {.deprecated: "Shouldn't use this".} = echo "hey"
- proc gen2(o: auto) =
- if o.hey():
- echo "not deprecated"
- gen2(SomeObj(hey: true)))
- proc hey(o: SomeObj) {.deprecated: "Shouldn't use this".} = echo "hey"
- proc gen3(o: auto) =
- if o.hey:
- echo "not deprecated"
- gen3(SomeObj(hey: true))
- {.pop.}
- block: # error
- type
- SomeObj = object
- hey: bool
- proc hey() {.error: "Shouldn't use this".} = echo "hey"
- proc gen(o: auto) =
- doAssert not compiles(o.hey())
- if o.hey:
- echo "not error"
- gen(SomeObj(hey: true))
- doAssert not (compiles do:
- proc hey(o: SomeObj) {.error: "Shouldn't use this".} = echo "hey"
- proc gen2(o: auto) =
- if o.hey():
- echo "not error"
- gen2(SomeObj(hey: true)))
- proc hey(o: SomeObj) {.error: "Shouldn't use this".} = echo "hey"
- proc gen3(o: auto) =
- if o.hey:
- echo "not error"
- gen3(SomeObj(hey: true))
|