#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::fmt::{Error, Write}; fn writer(f: &mut W, c: char) -> Result<(), Error> { f.write_char(c) } fn main() -> Result<(), impl core::fmt::Debug> { let mut buf = String::new(); writer(&mut buf, 'a')?; writer(&mut buf, 'b')?; assert_eq!(& buf, "ab"); std::fmt::Result::Ok(()) }