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
+2 -1
View File
@@ -438,7 +438,8 @@ static auto ParsingInDeferredDefinitionScope(Context& context) -> bool {
auto& stack = context.state_stack();
if (stack.size() < 2 ||
(stack.back().kind != StateKind::DeclScopeLoopAsClass &&
stack.back().kind != StateKind::DeclScopeLoopAsNonClass)) {
stack.back().kind != StateKind::DeclScopeLoopAsInterface &&
stack.back().kind != StateKind::DeclScopeLoopAsRegular)) {
return false;
}
auto kind = stack[stack.size() - 2].kind;