class F<T>(vararg t: T)
class B<T>(vararg f: T) : F(*f)
F throws error requiring at least one typed argument whilst f is already typed
thus requiring to have
class B<T>(vararg f:T) : F<T>(*f)
is this a bug or just the language designs as?
class F<T>(vararg t: T)
class B<T>(vararg f: T) : F(*f)
F throws error requiring at least one typed argument whilst f is already typed
thus requiring to have
class B<T>(vararg f:T) : F<T>(*f)
is this a bug or just the language designs as?
That’s supposed to be that way. You’re not required to use the same type arguments for a class and its subclass, any of these could also make sense depending on what you need:
class B<T>() : F<List<T>>()
class B<T>() : F<Int>()
class B() : F<String>()