# HG changeset patch # User haftmann # Date 1411663652 -7200 # Node ID 271829a473ed1ac5db4bf3420a3469880966bcc6 # Parent 75b92e25f59f6f27326724b37d08a1f97c801c06 more correct precedence of do-notation diff -r 75b92e25f59f -r 271829a473ed src/Tools/Code/code_haskell.ML --- a/src/Tools/Code/code_haskell.ML Thu Sep 25 17:07:44 2014 +0200 +++ b/src/Tools/Code/code_haskell.ML Thu Sep 25 18:47:32 2014 +0200 @@ -471,8 +471,9 @@ val (ps, vars') = fold_map (print_monad (gen_print_bind (K print_term) thm) print_term) (bind :: binds) vars; in - (brackify fxy o single o enclose "do { " " }" o Pretty.breaks) + brackify_block fxy (str "do { ") (ps @| print_term vars' NOBR t'') + (str " }") end | NONE => brackify_infix (1, L) fxy (print_term vars (INFX (1, L)) t1, str ">>=", print_term vars (INFX (1, X)) t2)