=== tests/cases/compiler/genericFunctions3.ts ===
interface Query<T> {
>Query : Query<T>
>T : T

    foo(x: string): Query<T[]>;
>foo : (x: string) => Query<T[]>
>x : string
>Query : Query<T>
>T : T
}
 
function from<T>(arg: boolean): Query<T>; // was Error: Overload signature is not compatible with function definition.
>from : <T>(arg: boolean) => Query<T>
>T : T
>arg : boolean
>Query : Query<T>
>T : T

function from<T>(arg: any): Query<T> {
>from : <T>(arg: boolean) => Query<T>
>T : T
>arg : any
>Query : Query<T>
>T : T

    return undefined;
>undefined : undefined
}

