FILE: typeParameters.kt
    public abstract interface Foo : R|kotlin/Any| {
    }
    public final class FooImpl : R|Foo| {
        public constructor(): R|FooImpl| {
            super<R|kotlin/Any|>()
        }

    }
    public final class Bar : R|kotlin/Any| {
        public constructor(): R|Bar| {
            super<R|kotlin/Any|>()
        }

    }
    public final fun <T : R|Foo|> foo(t: R|T|): R|T| {
        ^foo R|<local>/t|
    }
    public final fun main(fooImpl: R|FooImpl|, bar: R|Bar|): R|kotlin/Unit| {
        lval a: R|FooImpl| = R|/foo|<R|FooImpl|>(R|<local>/fooImpl|)
        lval b: <ERROR TYPE REF: Cannot infer argument for type parameter T> = R|/foo<Inapplicable(INAPPLICABLE): /foo>#|<<ERROR TYPE REF: Cannot infer argument for type parameter T>>(R|<local>/bar|)
    }
