Fix record constructor for extension

This commit is contained in:
Evan Czaplicki 2013-08-02 10:51:12 -07:00
parent 070d02c914
commit 28d256876d

View file

@ -42,9 +42,9 @@ toDefs decl =
vars = take (length args) arguments
efields = zip (map fst fields) (map var vars)
record = Src.none $ case ext of
Type.EmptyRecord -> Src.Record efields
_ -> Src.Modify (var $ last vars) efields
record = case ext of
Type.EmptyRecord -> Src.none $ Src.Record efields
_ -> foldl (\r (f,v) -> Src.none $ Src.Insert r f v) (var $ last vars) efields
-- Type aliases must be added to an extended equality dictionary,
-- but they do not require any basic constraints.