interface GrundTyp interface BildungA : GrundTyp interface BildungB : GrundTyp interface BildungC : GrundTyp interface ZusammenfassungAC : BildungA, BildungC interface ZusammenfassungABC : ZusammenfassungAC, BildungB open class ErstTyp class Test { fun test(erstTyp: ErstTyp) { } } fun main() { val erstTyp1 = object : ErstTyp() {} val erstTyp2 = object : ErstTyp() {} Test().test(erstTyp1) Test().test(erstTyp2) // "type mismatch" }