Exposing internal types check is too strict

There are cases where internal types are not leaked, but the compiler complains regardless.


internal class InternalClass()

sealed class SealedClass() {

    protected fun ExposesInternal(): InternalClass {

In this case the compiler complains that the ExposesInternal function exposes InternalClass, but given that the class that is using it is a sealed class and the function has protected visibility this is not the case.