Add test for ICE
This commit is contained in:
parent
c5295ac64a
commit
d69d0d7aa7
1 changed files with 22 additions and 0 deletions
22
src/test/ui/traits/trait-with-dst.rs
Normal file
22
src/test/ui/traits/trait-with-dst.rs
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// compile-pass
|
||||
// #55266
|
||||
|
||||
struct VTable<DST: ?Sized> {
|
||||
_to_dst_ptr: fn(*mut ()) -> *mut DST,
|
||||
}
|
||||
|
||||
trait HasVTableFor<DST: ?Sized + 'static> {
|
||||
const VTABLE: &'static VTable<DST>;
|
||||
}
|
||||
|
||||
impl<T, DST: ?Sized + 'static> HasVTableFor<DST> for T {
|
||||
const VTABLE: &'static VTable<DST> = &VTable {
|
||||
_to_dst_ptr: |_: *mut ()| unsafe { std::mem::zeroed() },
|
||||
};
|
||||
}
|
||||
|
||||
pub fn push<DST: ?Sized + 'static, T>() {
|
||||
<T as HasVTableFor<DST>>::VTABLE;
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
Loading…
Add table
Add a link
Reference in a new issue