fix(51820): disallow using readonly and declare with auto-accessor (#51824)

This commit is contained in:
Oleksandr T
2022-12-20 23:25:33 +02:00
committed by GitHub
parent 6f4d340458
commit e73a51d5d7
4 changed files with 25 additions and 6 deletions

View File

@@ -45580,6 +45580,9 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
// If node.kind === SyntaxKind.Parameter, checkParameter reports an error if it's not a parameter property.
return grammarErrorOnNode(modifier, Diagnostics.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);
}
else if (flags & ModifierFlags.Accessor) {
return grammarErrorOnNode(modifier, Diagnostics._0_modifier_cannot_be_used_with_1_modifier, "readonly", "accessor");
}
flags |= ModifierFlags.Readonly;
break;
@@ -45637,6 +45640,9 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
else if (isPrivateIdentifierClassElementDeclaration(node)) {
return grammarErrorOnNode(modifier, Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier, "declare");
}
else if (flags & ModifierFlags.Accessor) {
return grammarErrorOnNode(modifier, Diagnostics._0_modifier_cannot_be_used_with_1_modifier, "declare", "accessor");
}
flags |= ModifierFlags.Ambient;
lastDeclare = modifier;
break;