mirror of
https://git.proxmox.com/git/rustc
synced 2025-08-15 15:06:20 +00:00
29 lines
510 B
Rust
29 lines
510 B
Rust
//@ run-pass
|
|
//@ check-run-results
|
|
#![feature(dyn_star, pointer_like_trait)]
|
|
#![allow(incomplete_features)]
|
|
|
|
use std::fmt::Debug;
|
|
use std::marker::PointerLike;
|
|
|
|
#[derive(Debug)]
|
|
#[repr(transparent)]
|
|
struct Foo(#[allow(dead_code)] usize);
|
|
|
|
// FIXME(dyn_star): Make this into a derive.
|
|
impl PointerLike for Foo {}
|
|
|
|
impl Drop for Foo {
|
|
fn drop(&mut self) {
|
|
println!("destructor called");
|
|
}
|
|
}
|
|
|
|
fn make_dyn_star(i: Foo) {
|
|
let _dyn_i: dyn* Debug = i;
|
|
}
|
|
|
|
fn main() {
|
|
make_dyn_star(Foo(42));
|
|
}
|