diff --git a/crates/kind-derive/src/subst.rs b/crates/kind-derive/src/subst.rs index 3eec615d..654ed608 100644 --- a/crates/kind-derive/src/subst.rs +++ b/crates/kind-derive/src/subst.rs @@ -290,17 +290,13 @@ impl<'a> Visitor for Subst<'a> { } ExprKind::SeqRecord(sec) => { use kind_tree::concrete::SeqOperation::*; - self.visit_expr(&mut sec.expr); - self.visit_expr(&mut sec.typ); - match &mut sec.operation { Set(expr) => self.visit_expr(expr), Mut(expr) => self.visit_expr(expr), Get => (), } - }, } } diff --git a/crates/kind-parser/src/expr.rs b/crates/kind-parser/src/expr.rs index e29eb75b..abdb8d03 100644 --- a/crates/kind-parser/src/expr.rs +++ b/crates/kind-parser/src/expr.rs @@ -881,23 +881,16 @@ impl<'a> Parser<'a> { pub fn parse_seq(&mut self) -> Result, SyntaxDiagnostic> { let start = self.range(); - self.eat_variant(Token::Bang)?; - let typ = self.parse_atom()?; - let name = self.parse_atom()?; - let mut fields = vec![]; - let mut end = self.range(); - while let Token::Dot = &self.get() { self.advance(); end = self.range(); fields.push(self.parse_id()?); } - let operation = if self.check_and_eat(Token::Eq) { let expr = self.parse_expr(false)?; end = expr.range; @@ -909,7 +902,6 @@ impl<'a> Parser<'a> { } else { SeqOperation::Get }; - Ok(Box::new(Expr { data: ExprKind::SeqRecord( SeqRecord {