rust/src/test/ui/specialization/issue-52050.rs

33 lines
577 B
Rust
Raw Normal View History

#![feature(specialization)]
// Regression test for #52050: when inserting the blanket impl `I`
// into the tree, we had to replace the child node for `Foo`, which
2018-10-22 11:21:55 -05:00
// led to the structure of the tree being messed up.
use std::iter::Iterator;
trait IntoPyDictPointer { }
struct Foo { }
impl Iterator for Foo {
type Item = ();
fn next(&mut self) -> Option<()> {
None
}
}
impl IntoPyDictPointer for Foo { }
impl<I> IntoPyDictPointer for I
where
I: Iterator,
{
}
impl IntoPyDictPointer for () //~ ERROR conflicting implementations
{
}
fn main() { }