//KT-1822 Error 'cannot infer visibility' required package kt1822 open class C { internal open fun foo() {} } interface T { protected fun foo() {} } class G : C(), T { override fun foo() {} //should be an error "cannot infer visibility"; for now 'public' is inferred in such cases } open class A { internal open fun foo() {} } interface B { protected fun foo() {} } interface D { public fun foo() {} } class E : A(), B, D { override fun foo() {} }