//@ aux-build:pretty-print-dep.rs //@ compile-flags: --crate-type=lib #![feature(sized_hierarchy)] // Test that printing the sizedness trait bounds in the conflicting impl error with // `sized_hierarchy` enabled prints all of the appropriate bounds. // // It isn't possible to write a test that matches the multiline note containing the important // diagnostic output being tested - so check the stderr changes carefully! use std::marker::{MetaSized, PointeeSized}; extern crate pretty_print_dep; use pretty_print_dep::{SizedTr, MetaSizedTr, PointeeSizedTr}; struct X(T); impl SizedTr for X {} //~^ ERROR conflicting implementations of trait `SizedTr` for type `X<_>` impl pretty_print_dep::NegSizedTr for X {} //~^ ERROR conflicting implementations of trait `NegSizedTr` for type `X<_>` impl MetaSizedTr for X {} //~^ ERROR conflicting implementations of trait `MetaSizedTr` for type `X<_>` impl PointeeSizedTr for X {} //~^ ERROR conflicting implementations of trait `PointeeSizedTr` for type `X<_>`