yet another ui test
This commit is contained in:
parent
9d110847ab
commit
e2a1a2ab79
42
tests/ui/mir/issue-107691.rs
Normal file
42
tests/ui/mir/issue-107691.rs
Normal file
@ -0,0 +1,42 @@
|
||||
// build-pass
|
||||
// compile-flags: -C opt-level=3
|
||||
|
||||
#![crate_type = "lib"]
|
||||
|
||||
pub trait Archive {
|
||||
type Archived;
|
||||
type Resolver;
|
||||
|
||||
fn resolve(resolver: Self::Resolver, out: *mut Self::Archived);
|
||||
}
|
||||
|
||||
pub type Archived<T> = <T as Archive>::Archived;
|
||||
pub type Resolver<T> = <T as Archive>::Resolver;
|
||||
|
||||
pub struct Record<'a> {
|
||||
_payload: &'a [u8],
|
||||
}
|
||||
|
||||
pub struct ArchivedRecord<'a>
|
||||
where
|
||||
&'a [u8]: Archive,
|
||||
{
|
||||
_payload: Archived<&'a [u8]>,
|
||||
}
|
||||
|
||||
pub struct RecordResolver<'a>
|
||||
where
|
||||
&'a [u8]: Archive,
|
||||
{
|
||||
_payload: Resolver<&'a [u8]>,
|
||||
}
|
||||
|
||||
impl<'a> Archive for Record<'a>
|
||||
where
|
||||
&'a [u8]: Archive,
|
||||
{
|
||||
type Archived = ArchivedRecord<'a>;
|
||||
type Resolver = RecordResolver<'a>;
|
||||
|
||||
fn resolve(_resolver: Self::Resolver, _out: *mut Self::Archived) {}
|
||||
}
|
Loading…
Reference in New Issue
Block a user