FILE: common.kt
    public open expect class A<T> : R|kotlin/Any| {
        public constructor<T>(): R|A<T>| {
            super<R|kotlin/Any|>()
        }

        public open fun foo(arg: R|T|): R|kotlin/Unit|

    }
    public open class B : R|A<kotlin/String>| {
        public constructor(): R|B| {
            super<R|A<kotlin/String>|>()
        }

    }
    public open class C : R|B| {
        public constructor(): R|C| {
            super<R|B|>()
        }

        public open fun bar(arg: R|kotlin/String|): R|kotlin/String| {
            ^bar R|<local>/arg|
        }

        public open fun baz(arg: R|kotlin/CharSequence|): R|kotlin/String| {
            ^baz R|<local>/arg|.R|kotlin/Any.toString|()
        }

    }
