Decouple associated constants from let (#5973)

Decouples associated constants from being special cased in let handlers.
Enforces associated constant grammar restrictions in parsing instead of
checking.

Closes #5411
This commit is contained in:
Elliott Kalt
2025-09-02 23:15:26 +00:00
committed by GitHub
parent 0e6dd7e701
commit 58de34e534
43 changed files with 755 additions and 677 deletions
+3 -1
View File
@@ -24,8 +24,10 @@ static auto HandleDeclOrDefinition(Context& context, NodeKind decl_kind,
context.PushState(state, definition_finish_state);
if (decl_kind == NodeKind::ClassDecl) {
context.PushState(StateKind::DeclScopeLoopAsClass);
} else if (decl_kind == NodeKind::InterfaceDecl) {
context.PushState(StateKind::DeclScopeLoopAsInterface);
} else {
context.PushState(StateKind::DeclScopeLoopAsNonClass);
context.PushState(StateKind::DeclScopeLoopAsRegular);
}
context.AddNode(definition_start_kind, context.Consume(), state.has_error);
}