Skip to content

Commit e2a1a2a

Browse files
author
Lukas Markeffsky
committed
yet another ui test
1 parent 9d11084 commit e2a1a2a

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

tests/ui/mir/issue-107691.rs

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
// build-pass
2+
// compile-flags: -C opt-level=3
3+
4+
#![crate_type = "lib"]
5+
6+
pub trait Archive {
7+
type Archived;
8+
type Resolver;
9+
10+
fn resolve(resolver: Self::Resolver, out: *mut Self::Archived);
11+
}
12+
13+
pub type Archived<T> = <T as Archive>::Archived;
14+
pub type Resolver<T> = <T as Archive>::Resolver;
15+
16+
pub struct Record<'a> {
17+
_payload: &'a [u8],
18+
}
19+
20+
pub struct ArchivedRecord<'a>
21+
where
22+
&'a [u8]: Archive,
23+
{
24+
_payload: Archived<&'a [u8]>,
25+
}
26+
27+
pub struct RecordResolver<'a>
28+
where
29+
&'a [u8]: Archive,
30+
{
31+
_payload: Resolver<&'a [u8]>,
32+
}
33+
34+
impl<'a> Archive for Record<'a>
35+
where
36+
&'a [u8]: Archive,
37+
{
38+
type Archived = ArchivedRecord<'a>;
39+
type Resolver = RecordResolver<'a>;
40+
41+
fn resolve(_resolver: Self::Resolver, _out: *mut Self::Archived) {}
42+
}

0 commit comments

Comments
 (0)