interface ISomething pass class Wrapper implements ISomething get wrapped as ISomething return this class A implements ISomething def foo(t as ISomething) as bool if t inherits Wrapper t = t.wrapped return false class B inherits A # inheriting a constructed generic def foo(t as ISomething) as bool return base.foo(t) # at one point, this caused a false error message, claiming that 't' in the base method was type Wrapper. class Test def main is shared pass