anchor.diff:                    (Print.tscheme_to_string (us, k));
   
     log_issue r (Errors.Warning_BleedingEdge_Feature,
  -    BU.format1 "Polymonadic binds (%s in this case) is a bleeding edge F* feature;\
  +    BU.format1 "Polymonadic binds (%s in this case) is an experimental feature;\
         it is subject to some redesign in the future. Please keep us informed (on github etc.) about how you are using it"
         eff_name);
   
  
positive.code:     BU.print2 "Polymonadic subcomp %s type after unification : %s\n"
        combinator_name (Print.tscheme_to_string (us, k));
  
    (us, t), (us, k)
  
negative.code: let tc_polymonadic_subcomp env0 (m:lident) (n:lident) (ts:S.tscheme) : (S.tscheme * S.tscheme) =
    let r = (snd ts).pos in
  
    let combinator_name =
      (m |> ident_of_lid |> string_of_id) ^ " <: " ^
      (n |> ident_of_lid |> string_of_id) in
  
    let us, t, ty = check_and_gen env0 combinator_name "polymonadic_subcomp" 1 ts in
  
  