Mercurial > urweb
comparison src/elab_env.sml @ 1453:03642b83b57b
Fix for projection of type class constructors in signatures.
author | Karn Kallio <kkallio@eka> |
---|---|
date | Tue, 26 Apr 2011 00:11:21 -0430 |
parents | fdf48f6ba418 |
children | 96353138f016 |
comparison
equal
deleted
inserted
replaced
1452:aae3e3b6a408 | 1453:03642b83b57b |
---|---|
1379 SOME (k', SOME (CModProj (m1, ms, x'), #2 sgn)) | 1379 SOME (k', SOME (CModProj (m1, ms, x'), #2 sgn)) |
1380 end | 1380 end |
1381 else | 1381 else |
1382 NONE | 1382 NONE |
1383 | SgiClassAbs (x, _, k) => if x = field then | 1383 | SgiClassAbs (x, _, k) => if x = field then |
1384 SOME ((KArrow (k, (KType, #2 sgn)), #2 sgn), NONE) | 1384 SOME (k, NONE) |
1385 else | 1385 else |
1386 NONE | 1386 NONE |
1387 | SgiClass (x, _, k, c) => if x = field then | 1387 | SgiClass (x, _, k, c) => if x = field then |
1388 SOME ((KArrow (k, (KType, #2 sgn)), #2 sgn), SOME c) | 1388 SOME (k, SOME c) |
1389 else | 1389 else |
1390 NONE | 1390 NONE |
1391 | _ => NONE) sgis of | 1391 | _ => NONE) sgis of |
1392 NONE => NONE | 1392 NONE => NONE |
1393 | SOME ((k, co), subs) => SOME (k, Option.map (sgnSubCon (str, subs)) co)) | 1393 | SOME ((k, co), subs) => SOME (k, Option.map (sgnSubCon (str, subs)) co)) |