rust/tests/ui/derives/derive-Debug-use-ufcs-tuple.rs

33 lines
580 B
Rust

//@ run-pass
#![allow(warnings)]
#[derive(Debug)]
pub struct Foo<T>(pub T);
use std::fmt;
impl<T> Field for T {}
impl<T> Finish for T {}
impl Dt for &mut fmt::Formatter<'_> {}
pub trait Field {
fn field(&self, _: impl Sized) {
panic!("got into field");
}
}
pub trait Finish {
fn finish(&self) -> Result<(), std::fmt::Error> {
panic!("got into finish");
}
}
pub trait Dt {
fn debug_tuple(&self, _: &str) {
panic!("got into debug_tuple");
}
}
fn main() {
let foo = Foo(());
assert_eq!("Foo(())", format!("{:?}", foo));
}