=== tests/cases/conformance/types/typeParameters/typeParameterLists/innerTypeParameterShadowingOuterOne.ts === // inner type parameters shadow outer ones of the same name // no errors expected function f() { >f : () => void >T : T >Date : Date function g() { >g : () => void >T : T >Number : Number var x: T; >x : T >T : T x.toFixed(); >x.toFixed() : string >x.toFixed : (fractionDigits?: number) => string >x : T >toFixed : (fractionDigits?: number) => string } var x: T; >x : T >T : T x.getDate(); >x.getDate() : number >x.getDate : () => number >x : T >getDate : () => number } function f2() { >f2 : () => void >T : T >Date : Date >U : U >Date : Date function g() { >g : () => void >T : T >Number : Number >U : U >Number : Number var x: U; >x : U >U : U x.toFixed(); >x.toFixed() : string >x.toFixed : (fractionDigits?: number) => string >x : U >toFixed : (fractionDigits?: number) => string } var x: U; >x : U >U : U x.getDate(); >x.getDate() : number >x.getDate : () => number >x : U >getDate : () => number } //function f2() { // function g() { // var x: U; // x.toFixed(); // } // var x: U; // x.getDate(); //}