diff --git a/src/prolog/heap_print.rs b/src/prolog/heap_print.rs index bdfb3bdf..17501652 100644 --- a/src/prolog/heap_print.rs +++ b/src/prolog/heap_print.rs @@ -277,7 +277,7 @@ fn numbervar(n: Integer) -> Var { let i = n.mod_u(26) as usize; let j = n.div_rem_floor(Integer::from(26)); - let j = <(Integer, Integer)>::from(j).1; + let j = <(Integer, Integer)>::from(j).0; if j == 0 { CHAR_CODES[i].to_string() @@ -843,7 +843,9 @@ impl<'a, Outputter: HCValueOutputter> HCPrinter<'a, Outputter> { Constant::Char(c) => { let mut result = String::new(); - if self.quoted { + if c.is_control() { + result = c.to_string(); + } else if self.quoted { result.push('\''); result += &char_to_string(c); result.push('\'');