aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/boot/me/semant.ml7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/boot/me/semant.ml b/src/boot/me/semant.ml
index 9a5cee15..c22e788b 100644
--- a/src/boot/me/semant.ml
+++ b/src/boot/me/semant.ml
@@ -999,9 +999,14 @@ let rec pretty_ty_str (cx:ctxt) (fallback:(Ast.ty -> string)) (ty:Ast.ty) =
"rec(" ^ (String.concat ", " fields) ^ ")"
| Ast.TY_fn (fnsig, aux) ->
let format_slot slot =
+ let prefix =
+ match slot.Ast.slot_mode with
+ Ast.MODE_local -> ""
+ | Ast.MODE_alias -> "&"
+ in
match slot.Ast.slot_ty with
None -> Common.bug () "no ty in slot"
- | Some ty' -> pretty_ty_str cx fallback ty'
+ | Some ty' -> prefix ^ (pretty_ty_str cx fallback ty')
in
let effect = aux.Ast.fn_effect in
let qual = Fmt.sprintf_fmt Ast.fmt_effect_qual () effect in