diff --git a/src/typechecker.rs b/src/typechecker.rs index 21ff54a..776459d 100644 --- a/src/typechecker.rs +++ b/src/typechecker.rs @@ -2569,6 +2569,7 @@ impl TypeChecker { // Start with spread fields if present let mut field_types: Vec<(String, Type)> = if let Some(spread_expr) = spread { let spread_type = self.infer_expr(spread_expr); + let spread_type = self.env.expand_type_alias(&spread_type); match spread_type { Type::Record(spread_fields) => spread_fields, _ => {