2019-07-26 16:54:25 -05:00
|
|
|
// run-pass
|
2014-10-21 22:57:16 -05:00
|
|
|
// Test that we correctly ignore the blanket impl
|
|
|
|
// because (in this case) `T` does not impl `Clone`.
|
|
|
|
//
|
|
|
|
// Issue #17594.
|
|
|
|
|
|
|
|
use std::cell::RefCell;
|
|
|
|
|
|
|
|
trait Foo {
|
|
|
|
fn foo(&self) {}
|
|
|
|
}
|
|
|
|
|
|
|
|
impl<T> Foo for T where T: Clone {}
|
|
|
|
|
|
|
|
struct Bar;
|
|
|
|
|
|
|
|
impl Bar {
|
|
|
|
fn foo(&self) {}
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let b = RefCell::new(Bar);
|
2015-01-12 10:23:40 -06:00
|
|
|
b.borrow().foo();
|
2014-10-21 22:57:16 -05:00
|
|
|
}
|