diff options
| author | Ilya Yanok <ilya.yanok@gmail.com> | 2021-10-28 14:25:46 +0000 |
|---|---|---|
| committer | Ilya Yanok <ilya.yanok@gmail.com> | 2021-10-28 14:25:46 +0000 |
| commit | 9a0a622a042d0ed04ad349d8bb778e40dd417a16 (patch) | |
| tree | 26483df27a5a4a837d6003e259c4b910aacd0bb8 | |
| parent | 6f942a2f4a0487a7428a9aba8f018eb45cdb924e (diff) | |
| download | rust-9a0a622a042d0ed04ad349d8bb778e40dd417a16.tar.gz rust-9a0a622a042d0ed04ad349d8bb778e40dd417a16.zip | |
Add test cases
| -rw-r--r-- | src/test/ui/traits/issue-90195-2.rs | 20 | ||||
| -rw-r--r-- | src/test/ui/traits/issue-90195.rs | 21 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/test/ui/traits/issue-90195-2.rs b/src/test/ui/traits/issue-90195-2.rs new file mode 100644 index 00000000000..b739dc46e4e --- /dev/null +++ b/src/test/ui/traits/issue-90195-2.rs @@ -0,0 +1,20 @@ +// check-pass +pub trait Archive { + type Archived; +} + +impl<T> Archive for Option<T> { + type Archived = (); +} +pub type Archived<T> = <T as Archive>::Archived; + +pub trait Deserialize<D> {} + +const ARRAY_SIZE: usize = 32; +impl<__D> Deserialize<__D> for () +where + Option<[u8; ARRAY_SIZE]>: Archive, + Archived<Option<[u8; ARRAY_SIZE]>>: Deserialize<__D>, +{ +} +fn main() {} diff --git a/src/test/ui/traits/issue-90195.rs b/src/test/ui/traits/issue-90195.rs new file mode 100644 index 00000000000..543c9f197e1 --- /dev/null +++ b/src/test/ui/traits/issue-90195.rs @@ -0,0 +1,21 @@ +// check-pass +pub trait Archive { + type Archived; +} + +impl<T> Archive for Option<T> { + type Archived = (); +} +pub type Archived<T> = <T as Archive>::Archived; + +pub trait Deserialize<D> {} + +const ARRAY_SIZE: usize = 32; +impl<__D> Deserialize<__D> for () +where + Option<[u8; ARRAY_SIZE]>: Archive, + Option<[u8; ARRAY_SIZE]>: Archive, + Archived<Option<[u8; ARRAY_SIZE]>>: Deserialize<__D>, +{ +} +fn main() {} |
