==== tests/cases/compiler/getAccessorWithImpliedReturnTypeAndFunctionClassMerge.ts (4 errors) ==== declare function _(value: Array): _; ~~~~ !!! Cannot find name '_'. declare function _(value: T): _; ~~~~ !!! Cannot find name '_'. declare module _ { export function each( //list: List, //iterator: ListIterator, context?: any): void; interface ListIterator { (value: T, index: number, list: T[]): TResult; } } declare class _ { ~ !!! Duplicate identifier '_'. each(iterator: _.ListIterator, context?: any): void; } module MyModule { export class MyClass { public get myGetter() { ~~~~~~~~ !!! Accessors are only available when targeting ECMAScript 5 and higher. var obj:any = {}; return obj; } } }