mirror of
https://github.com/rust-lang/rust
synced 2024-11-05 20:45:15 +00:00
32 lines
408 B
Rust
32 lines
408 B
Rust
//@ known-bug: #104800
|
|
|
|
#![feature(dyn_star, trait_upcasting)]
|
|
|
|
trait Foo: Bar {
|
|
fn hello(&self);
|
|
}
|
|
|
|
trait Bar {
|
|
fn world(&self);
|
|
}
|
|
|
|
struct W(usize);
|
|
|
|
impl Foo for W {
|
|
fn hello(&self) {
|
|
println!("hello!");
|
|
}
|
|
}
|
|
|
|
impl Bar for W {
|
|
fn world(&self) {
|
|
println!("world!");
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
let w: dyn* Foo = W(0);
|
|
w.hello();
|
|
let w: dyn* Bar = w;
|
|
w.world();
|
|
}
|