diff --git a/src/kernel_services/ast_printing/cil_types_debug.ml b/src/kernel_services/ast_printing/cil_types_debug.ml index b486c47ae635bb80cb6d1bcfdd7b70891207225e..e4ce5c819f9b8f816fb2bec6ac79ce6c37174a97 100644 --- a/src/kernel_services/ast_printing/cil_types_debug.ml +++ b/src/kernel_services/ast_printing/cil_types_debug.ml @@ -43,7 +43,7 @@ let print_full_varinfo = false let print_full_fundec = false let print_full_spec = false -let pp_list fmt = Pretty_utils.pp_list fmt ~sep:", " ~pre:"[" ~last:"]" ~suf:"" ~empty:"[]" +let pp_list fmt = Pretty_utils.pp_list fmt ~sep:"; " ~pre:"[" ~suf:"]" ~empty:"[]" let pp_option fmt = Pretty_utils.pp_opt ~none:"None" ~pre:"Some(" ~suf:")" fmt let pp_ref pp fmt r = Format.fprintf fmt "Ref(%a)" pp !r let pp_pair fmt1 fmt2 = Pretty_utils.pp_pair ~pre:"(" ~sep:", " ~suf:")" fmt1 fmt2 @@ -350,7 +350,7 @@ and pp_varinfo fmt varinfo = vdescrpure=%a;\ vghost=%a;\ vsource=%a;\ - vlogic_var_assoc=%a;\ + vlogic_var_assoc=%s;\ }" pp_string varinfo.vname pp_string varinfo.vorig_name @@ -370,7 +370,8 @@ and pp_varinfo fmt varinfo = pp_bool varinfo.vdescrpure pp_bool varinfo.vghost pp_bool varinfo.vsource - (pp_option pp_logic_var) varinfo.vlogic_var_assoc + (* the code below prevents infinite recursion *) + (if varinfo.vlogic_var_assoc = None then "None" else "Some " ^ (Option.get varinfo.vlogic_var_assoc).lv_name) else Format.fprintf fmt "{vname=%a;vid=%a}" pp_string varinfo.vname