From 2d150a3a3d5744518af82e1d3f4ae9531d657ae6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gwena=EBl=20Delaval?= Date: Tue, 9 Jul 2013 21:15:31 +0200 Subject: [PATCH] Infix operators in printers Infix operators handled in Heptagon and Minils printers --- compiler/heptagon/hept_printer.ml | 3 +++ compiler/minils/mls_printer.ml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/compiler/heptagon/hept_printer.ml b/compiler/heptagon/hept_printer.ml index 0ac6c89..72142dc 100644 --- a/compiler/heptagon/hept_printer.ml +++ b/compiler/heptagon/hept_printer.ml @@ -194,6 +194,9 @@ and print_app ff (app, args) = | Efun { name = n } when (n = "*" or n = "*.") -> let a1, a2 = assert_2 args in fprintf ff "@[%a@, %s@, %a@]" print_exp a1 n print_exp a2 + | Efun { qual = Pervasives; name = n } when (is_infix n) -> + let a1, a2 = assert_2 args in + fprintf ff "@[(%a@, %s@, %a)@]" print_exp a1 n print_exp a2 | Efun f -> fprintf ff "@[%a@,%a@,%a@]" print_qualname f print_params app.a_params print_exp_tuple args diff --git a/compiler/minils/mls_printer.ml b/compiler/minils/mls_printer.ml index 705f16a..596ba8e 100644 --- a/compiler/minils/mls_printer.ml +++ b/compiler/minils/mls_printer.ml @@ -154,6 +154,9 @@ and print_app ff (app, args) = | Eequal -> let e1, e2 = assert_2 args in fprintf ff "@[<2>%a@ = %a@]" print_extvalue e1 print_extvalue e2 + | Efun { qual = Pervasives; name = n } when (is_infix n) -> + let a1, a2 = assert_2 args in + fprintf ff "@[(%a@, %s@, %a)@]" print_extvalue a1 n print_extvalue a2 | Efun f | Enode f -> fprintf ff "@[%a@,%a@,%a@]" print_qualname f print_params app.a_params print_w_tuple args