;;
let on_buffer f t =
+ try
let buff = Buffer.create 100 in
let formatter = F.formatter_of_buffer buff in
f ~formatter:formatter t;
F.fprintf formatter "@?";
Buffer.contents buff
+ with Failure m ->
+ "[[Unprintable: " ^ m ^ "]]"
;;
let ppterm ~formatter ~context ~subst ~metasenv ?(margin=80) ?inside_fix t =