@@ -13794,15 +13794,19 @@ namespace ts {
1379413794 }
1379513795
1379613796 function checkClassForDuplicateDeclarations(node: ClassLikeDeclaration) {
13797- const getter = 1, setter = 2, property = getter | setter;
13797+ const enum Accessor {
13798+ Getter = 1,
13799+ Setter = 2,
13800+ Property = Getter | Setter
13801+ }
1379813802
13799- const instanceNames = createMap<number >();
13800- const staticNames = createMap<number >();
13803+ const instanceNames = createMap<Accessor >();
13804+ const staticNames = createMap<Accessor >();
1380113805 for (const member of node.members) {
1380213806 if (member.kind === SyntaxKind.Constructor) {
1380313807 for (const param of (member as ConstructorDeclaration).parameters) {
1380413808 if (isParameterPropertyDeclaration(param)) {
13805- addName(instanceNames, param.name, (param.name as Identifier).text, property );
13809+ addName(instanceNames, param.name, (param.name as Identifier).text, Accessor.Property );
1380613810 }
1380713811 }
1380813812 }
@@ -13814,22 +13818,22 @@ namespace ts {
1381413818 if (memberName) {
1381513819 switch (member.kind) {
1381613820 case SyntaxKind.GetAccessor:
13817- addName(names, member.name, memberName, getter );
13821+ addName(names, member.name, memberName, Accessor.Getter );
1381813822 break;
1381913823
1382013824 case SyntaxKind.SetAccessor:
13821- addName(names, member.name, memberName, setter );
13825+ addName(names, member.name, memberName, Accessor.Setter );
1382213826 break;
1382313827
1382413828 case SyntaxKind.PropertyDeclaration:
13825- addName(names, member.name, memberName, property );
13829+ addName(names, member.name, memberName, Accessor.Property );
1382613830 break;
1382713831 }
1382813832 }
1382913833 }
1383013834 }
1383113835
13832- function addName(names: Map<number >, location: Node, name: string, meaning: number ) {
13836+ function addName(names: Map<Accessor >, location: Node, name: string, meaning: Accessor ) {
1383313837 const prev = names[name];
1383413838 if (prev) {
1383513839 if (prev & meaning) {
0 commit comments