diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts index fc5479144eb..15b51ea2068 100644 --- a/src/compiler/emitter.ts +++ b/src/compiler/emitter.ts @@ -4436,7 +4436,7 @@ module ts { }); } - function emitMemberFunctions(node: ClassDeclaration) { + function emitMemberFunctionsBelowES6(node: ClassDeclaration) { forEach(node.members, member => { if (member.kind === SyntaxKind.MethodDeclaration || node.kind === SyntaxKind.MethodSignature) { if (!(member).body) { @@ -4446,19 +4446,14 @@ module ts { writeLine(); emitLeadingComments(member); emitStart(member); - emitStart((member).name); emitDeclarationName(node); if (!(member.flags & NodeFlags.Static)) { write(".prototype"); } emitMemberAccessForPropertyName((member).name); - emitEnd((member).name); write(" = "); - // TODO (drosen): Should we performing emitStart twice on emitStart(member)? - emitStart(member); emitFunctionDeclaration(member); emitEnd(member); - emitEnd(member); write(";"); emitTrailingComments(member); } @@ -4656,7 +4651,7 @@ module ts { } writeLine(); emitConstructorOfClass(node, baseTypeNode); - emitMemberFunctions(node); + emitMemberFunctionsBelowES6(node); emitMemberAssignments(node, NodeFlags.Static); writeLine(); emitToken(SyntaxKind.CloseBraceToken, node.members.end, () => {