diff --git a/toolchain/check/node_stack.h b/toolchain/check/node_stack.h index b4bb8b87dc9d5..6fccf072fe681 100644 --- a/toolchain/check/node_stack.h +++ b/toolchain/check/node_stack.h @@ -472,7 +472,176 @@ class NodeStack { case Parse::NodeKind::VariableInitializer: case Parse::NodeKind::VariableIntroducer: return Id::Kind::None; - default: + case Parse::NodeKind::AbstractModifier: + case Parse::NodeKind::AdaptDecl: + case Parse::NodeKind::AdaptIntroducer: + case Parse::NodeKind::Alias: + case Parse::NodeKind::AliasInitializer: + case Parse::NodeKind::AliasIntroducer: + case Parse::NodeKind::ArrayExpr: + case Parse::NodeKind::ArrayExprStart: + case Parse::NodeKind::AutoTypeLiteral: + case Parse::NodeKind::BaseColon: + case Parse::NodeKind::BaseDecl: + case Parse::NodeKind::BaseIntroducer: + case Parse::NodeKind::BaseModifier: + case Parse::NodeKind::BaseName: + case Parse::NodeKind::BoolLiteralFalse: + case Parse::NodeKind::BoolLiteralTrue: + case Parse::NodeKind::BoolTypeLiteral: + case Parse::NodeKind::BreakStatement: + case Parse::NodeKind::BreakStatementStart: + case Parse::NodeKind::BuiltinFunctionDefinition: + case Parse::NodeKind::CallExpr: + case Parse::NodeKind::CallExprComma: + case Parse::NodeKind::ChoiceAlternativeListComma: + case Parse::NodeKind::ChoiceDefinition: + case Parse::NodeKind::ChoiceDefinitionStart: + case Parse::NodeKind::ChoiceIntroducer: + case Parse::NodeKind::ClassDecl: + case Parse::NodeKind::ClassDefinition: + case Parse::NodeKind::CodeBlock: + case Parse::NodeKind::ContinueStatement: + case Parse::NodeKind::ContinueStatementStart: + case Parse::NodeKind::DefaultModifier: + case Parse::NodeKind::DefaultSelfImplAs: + case Parse::NodeKind::DesignatorExpr: + case Parse::NodeKind::EmptyDecl: + case Parse::NodeKind::ExportDecl: + case Parse::NodeKind::ExportIntroducer: + case Parse::NodeKind::ExportModifier: + case Parse::NodeKind::ExprStatement: + case Parse::NodeKind::ExtendModifier: + case Parse::NodeKind::ExternModifier: + case Parse::NodeKind::ExternModifierWithLibrary: + case Parse::NodeKind::FileEnd: + case Parse::NodeKind::FileStart: + case Parse::NodeKind::FinalModifier: + case Parse::NodeKind::FloatTypeLiteral: + case Parse::NodeKind::ForHeader: + case Parse::NodeKind::ForHeaderStart: + case Parse::NodeKind::ForIn: + case Parse::NodeKind::ForStatement: + case Parse::NodeKind::FunctionDecl: + case Parse::NodeKind::FunctionDefinition: + case Parse::NodeKind::IdentifierName: + case Parse::NodeKind::IdentifierNameExpr: + case Parse::NodeKind::IfConditionStart: + case Parse::NodeKind::IfExprElse: + case Parse::NodeKind::IfStatement: + case Parse::NodeKind::ImplDecl: + case Parse::NodeKind::ImplDefinition: + case Parse::NodeKind::ImplModifier: + case Parse::NodeKind::ImportDecl: + case Parse::NodeKind::ImportIntroducer: + case Parse::NodeKind::IndexExpr: + case Parse::NodeKind::IndexExprStart: + case Parse::NodeKind::InfixOperatorAmp: + case Parse::NodeKind::InfixOperatorAmpEqual: + case Parse::NodeKind::InfixOperatorAs: + case Parse::NodeKind::InfixOperatorCaret: + case Parse::NodeKind::InfixOperatorCaretEqual: + case Parse::NodeKind::InfixOperatorEqual: + case Parse::NodeKind::InfixOperatorEqualEqual: + case Parse::NodeKind::InfixOperatorExclaimEqual: + case Parse::NodeKind::InfixOperatorGreater: + case Parse::NodeKind::InfixOperatorGreaterEqual: + case Parse::NodeKind::InfixOperatorGreaterGreater: + case Parse::NodeKind::InfixOperatorGreaterGreaterEqual: + case Parse::NodeKind::InfixOperatorLess: + case Parse::NodeKind::InfixOperatorLessEqual: + case Parse::NodeKind::InfixOperatorLessEqualGreater: + case Parse::NodeKind::InfixOperatorLessLess: + case Parse::NodeKind::InfixOperatorLessLessEqual: + case Parse::NodeKind::InfixOperatorMinus: + case Parse::NodeKind::InfixOperatorMinusEqual: + case Parse::NodeKind::InfixOperatorPercent: + case Parse::NodeKind::InfixOperatorPercentEqual: + case Parse::NodeKind::InfixOperatorPipe: + case Parse::NodeKind::InfixOperatorPipeEqual: + case Parse::NodeKind::InfixOperatorPlus: + case Parse::NodeKind::InfixOperatorPlusEqual: + case Parse::NodeKind::InfixOperatorSlash: + case Parse::NodeKind::InfixOperatorSlashEqual: + case Parse::NodeKind::InfixOperatorStar: + case Parse::NodeKind::InfixOperatorStarEqual: + case Parse::NodeKind::InterfaceDecl: + case Parse::NodeKind::InterfaceDefinition: + case Parse::NodeKind::IntLiteral: + case Parse::NodeKind::IntTypeLiteral: + case Parse::NodeKind::InvalidParse: + case Parse::NodeKind::InvalidParseStart: + case Parse::NodeKind::InvalidParseSubtree: + case Parse::NodeKind::LetDecl: + case Parse::NodeKind::LibraryDecl: + case Parse::NodeKind::LibraryIntroducer: + case Parse::NodeKind::LibrarySpecifier: + case Parse::NodeKind::MatchCase: + case Parse::NodeKind::MatchCaseEqualGreater: + case Parse::NodeKind::MatchCaseGuard: + case Parse::NodeKind::MatchCaseGuardIntroducer: + case Parse::NodeKind::MatchCaseGuardStart: + case Parse::NodeKind::MatchCaseIntroducer: + case Parse::NodeKind::MatchCaseStart: + case Parse::NodeKind::MatchCondition: + case Parse::NodeKind::MatchConditionStart: + case Parse::NodeKind::MatchDefault: + case Parse::NodeKind::MatchDefaultEqualGreater: + case Parse::NodeKind::MatchDefaultIntroducer: + case Parse::NodeKind::MatchDefaultStart: + case Parse::NodeKind::MatchIntroducer: + case Parse::NodeKind::MatchStatement: + case Parse::NodeKind::MatchStatementStart: + case Parse::NodeKind::MemberAccessExpr: + case Parse::NodeKind::NamedConstraintDecl: + case Parse::NodeKind::NamedConstraintDefinition: + case Parse::NodeKind::NamedConstraintDefinitionStart: + case Parse::NodeKind::NamedConstraintIntroducer: + case Parse::NodeKind::NameQualifier: + case Parse::NodeKind::Namespace: + case Parse::NodeKind::NamespaceStart: + case Parse::NodeKind::PackageDecl: + case Parse::NodeKind::PackageExpr: + case Parse::NodeKind::PackageIntroducer: + case Parse::NodeKind::PackageName: + case Parse::NodeKind::ParenExpr: + case Parse::NodeKind::ParenExprStart: + case Parse::NodeKind::PatternListComma: + case Parse::NodeKind::Placeholder: + case Parse::NodeKind::PointerMemberAccessExpr: + case Parse::NodeKind::PostfixOperatorStar: + case Parse::NodeKind::PrefixOperatorAmp: + case Parse::NodeKind::PrefixOperatorCaret: + case Parse::NodeKind::PrefixOperatorConst: + case Parse::NodeKind::PrefixOperatorMinus: + case Parse::NodeKind::PrefixOperatorMinusMinus: + case Parse::NodeKind::PrefixOperatorNot: + case Parse::NodeKind::PrefixOperatorPlusPlus: + case Parse::NodeKind::PrefixOperatorStar: + case Parse::NodeKind::PrivateModifier: + case Parse::NodeKind::ProtectedModifier: + case Parse::NodeKind::RealLiteral: + case Parse::NodeKind::ReturnStatement: + case Parse::NodeKind::SelfTypeName: + case Parse::NodeKind::SelfTypeNameExpr: + case Parse::NodeKind::SelfValueNameExpr: + case Parse::NodeKind::ShortCircuitOperatorAnd: + case Parse::NodeKind::ShortCircuitOperatorOr: + case Parse::NodeKind::StringLiteral: + case Parse::NodeKind::StringTypeLiteral: + case Parse::NodeKind::StructComma: + case Parse::NodeKind::StructFieldDesignator: + case Parse::NodeKind::StructLiteral: + case Parse::NodeKind::StructTypeLiteral: + case Parse::NodeKind::Template: + case Parse::NodeKind::TupleLiteral: + case Parse::NodeKind::TupleLiteralComma: + case Parse::NodeKind::TypeImplAs: + case Parse::NodeKind::TypeTypeLiteral: + case Parse::NodeKind::UnsignedIntTypeLiteral: + case Parse::NodeKind::VariableDecl: + case Parse::NodeKind::VirtualModifier: + case Parse::NodeKind::WhileStatement: return Id::Kind::Invalid; } };