aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/elaborate.sml
diff options
context:
space:
mode:
Diffstat (limited to 'src/elaborate.sml')
-rw-r--r--src/elaborate.sml10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/elaborate.sml b/src/elaborate.sml
index d87fadd1..06e13237 100644
--- a/src/elaborate.sml
+++ b/src/elaborate.sml
@@ -1160,6 +1160,7 @@ fun sgiOfDecl (d, loc) =
| L'.DVal (x, n, t, _) => SOME (L'.SgiVal (x, n, t), loc)
| L'.DSgn _ => NONE
| L'.DStr (x, n, sgn, _) => SOME (L'.SgiStr (x, n, sgn), loc)
+ | L'.DFfiStr (x, n, sgn) => SOME (L'.SgiStr (x, n, sgn), loc)
fun subSgn env sgn1 (sgn2 as (_, loc2)) =
case (#1 (hnormSgn env sgn1), #1 (hnormSgn env sgn2)) of
@@ -1403,6 +1404,15 @@ fun elabDecl ((d, loc), env) =
((L'.DStr (x, n, sgn', str'), loc), env')
end
+
+ | L.DFfiStr (x, sgn) =>
+ let
+ val sgn' = elabSgn env sgn
+
+ val (env', n) = E.pushStrNamed env x sgn'
+ in
+ ((L'.DFfiStr (x, n, sgn'), loc), env')
+ end
end
and elabStr env (str, loc) =