comparison src/elaborate.sml @ 1738:1a35e75b6967

Catch duplicate top-level module names; fix dropping of constraints during incremental elaboration; document treatment of record types as type class instance types
author Adam Chlipala <adam@chlipala.net>
date Thu, 03 May 2012 09:56:41 -0400
parents 78d7cc9c9b18
children fca4a6d05ac1
comparison
equal deleted inserted replaced
1737:78d7cc9c9b18 1738:1a35e75b6967
3932 SOME d => 3932 SOME d =>
3933 let 3933 let
3934 val env' = E.declBinds env d 3934 val env' = E.declBinds env d
3935 val denv' = dopenConstraints (loc, env', denv) {str = x, strs = []} 3935 val denv' = dopenConstraints (loc, env', denv) {str = x, strs = []}
3936 in 3936 in
3937 ([d], (env', denv', [])) 3937 ([d], (env', denv', gs))
3938 end 3938 end
3939 | NONE => 3939 | NONE =>
3940 let 3940 let
3941 val () = if x = "Basis" then 3941 val () = if x = "Basis" then
3942 raise Fail "Not allowed to redefine structure 'Basis'" 3942 raise Fail "Not allowed to redefine structure 'Basis'"