diff options
Diffstat (limited to 'src/semantic')
-rw-r--r-- | src/semantic/translate.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/semantic/translate.rs b/src/semantic/translate.rs index 6c7f60c..dfcec68 100644 --- a/src/semantic/translate.rs +++ b/src/semantic/translate.rs @@ -43,14 +43,13 @@ fn trans_ty<'a>( trans_ty(venv, tenv, &inner_ty) }, ast::Ty::Record(ref fields) => { - err!(ty, TypeError::Unimplemented) - // let result = vec![]; - // for field in fields { - // result.push(types::RecordField::new( - // *field.name, - // trans_ty(venv, tenv, field.ty)?)); - // } - // Ok(Ty::Record(result)) + let mut result = vec![]; + for field in fields { + result.push(types::RecordField::new( + field.name.clone(), + trans_ty(venv, tenv, &field.ty)?)); + } + Ok(Ty::Record(result)) }, } } |