diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 59106a6bca2..82ca3851a00 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -4093,7 +4093,7 @@ module ts { } function isNumericName(name: string) { - return !isNaN(name); + return (name !== "") && !isNaN(name); } function checkObjectLiteral(node: ObjectLiteral, contextualMapper?: TypeMapper): Type { @@ -6639,10 +6639,10 @@ module ts { var ambient = isInAmbientContext(node); forEach(node.members, member => { - // todo: remove first check here when isNumericName gets fixed - if(!(member.name.text === "") && isNumericName(member.name.text)) { - error(member.name, Diagnostics.An_enum_member_cannot_have_a_numeric_name); - } + // todo: remove first check here when isNumericName gets fixed + if(isNumericName(member.name.text)) { + error(member.name, Diagnostics.An_enum_member_cannot_have_a_numeric_name); + } var initializer = member.initializer; if (initializer) { autoValue = getConstantValueForExpression(initializer);