FILE: inferredToNothingDueToBoundsWithSelect.kt
    public abstract interface Traversable : R|kotlin/Any| {
        public open fun foo(): R|kotlin/String| {
            ^foo String(fail)
        }

    }
    public abstract interface Entity<S : R|Entity<S>|> : R|Traversable| {
        public abstract fun <T : R|S|> isEqualTo(): R|T|

    }
    public abstract interface Path : R|Traversable| {
    }
    public final fun <K> select(x: R|K|, y: R|K|): R|K| {
        ^select R|<local>/x|
    }
    public final fun foo(path: R|Path|, e: R|Entity<*>|): R|kotlin/String| {
        ^foo R|/select|<R|Traversable|>(R|<local>/e|.R|SubstitutionOverride</Entity.isEqualTo: R|T|>|<R|CapturedType(*)|>(), R|<local>/path|).R|/Traversable.foo|()
    }
