diff options
Diffstat (limited to 'src/test/ui/traits/bound/auxiliary')
-rw-r--r-- | src/test/ui/traits/bound/auxiliary/crate_a1.rs | 9 | ||||
-rw-r--r-- | src/test/ui/traits/bound/auxiliary/crate_a2.rs | 13 | ||||
-rw-r--r-- | src/test/ui/traits/bound/auxiliary/on_structs_and_enums_xc.rs | 13 |
3 files changed, 35 insertions, 0 deletions
diff --git a/src/test/ui/traits/bound/auxiliary/crate_a1.rs b/src/test/ui/traits/bound/auxiliary/crate_a1.rs new file mode 100644 index 000000000..6aa010258 --- /dev/null +++ b/src/test/ui/traits/bound/auxiliary/crate_a1.rs @@ -0,0 +1,9 @@ +pub trait Bar {} + +pub fn try_foo(x: impl Bar) {} + +pub struct ImplementsTraitForUsize<T> { + _marker: std::marker::PhantomData<T>, +} + +impl Bar for ImplementsTraitForUsize<usize> {} diff --git a/src/test/ui/traits/bound/auxiliary/crate_a2.rs b/src/test/ui/traits/bound/auxiliary/crate_a2.rs new file mode 100644 index 000000000..d6057db5e --- /dev/null +++ b/src/test/ui/traits/bound/auxiliary/crate_a2.rs @@ -0,0 +1,13 @@ +pub struct Foo; + +pub trait Bar {} + +impl Bar for Foo {} + +pub struct DoesNotImplementTrait; + +pub struct ImplementsWrongTraitConditionally<T> { + _marker: std::marker::PhantomData<T>, +} + +impl Bar for ImplementsWrongTraitConditionally<isize> {} diff --git a/src/test/ui/traits/bound/auxiliary/on_structs_and_enums_xc.rs b/src/test/ui/traits/bound/auxiliary/on_structs_and_enums_xc.rs new file mode 100644 index 000000000..7e9592eee --- /dev/null +++ b/src/test/ui/traits/bound/auxiliary/on_structs_and_enums_xc.rs @@ -0,0 +1,13 @@ +pub trait Trait { + fn dummy(&self) { } +} + +pub struct Foo<T:Trait> { + pub x: T, +} + +pub enum Bar<T:Trait> { + ABar(isize), + BBar(T), + CBar(usize), +} |