Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 264417e

Browse files
committed
Add tests for trait aliases with where clauses
1 parent 0c05a21 commit 264417e

File tree

2 files changed

+103
-0
lines changed

2 files changed

+103
-0
lines changed

tests/source/trait.rs

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,3 +122,55 @@ pub mod test {
122122
{
123123
}
124124
}
125+
126+
// Trait aliases with where clauses.
127+
trait A = where for<'b> &'b Self: Send;
128+
129+
trait B = where for<'b> &'b Self: Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCC;
130+
trait B = where for<'b> &'b Self: Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCCC;
131+
trait B = where
132+
for<'b> &'b Self:
133+
Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCCCCCCCCCCCCCCC;
134+
trait B = where
135+
for<'b> &'b Self:
136+
Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC;
137+
138+
trait B = where
139+
for<'b> &'b Self:
140+
Send
141+
+ Clone
142+
+ Copy
143+
+ SomeTrait
144+
+ AAAAAAAA
145+
+ BBBBBBB
146+
+ CCCCCCCCC
147+
+ DDDDDDD
148+
+ DDDDDDDD
149+
+ DDDDDDDDD
150+
+ EEEEEEE;
151+
152+
trait A<'a, 'b, 'c> = Debug<T> + Foo where for<'b> &'b Self: Send;
153+
154+
trait B<'a, 'b, 'c> = Debug<T> +Foo
155+
where for<'b> &'b Self:
156+
Send
157+
+ Clone
158+
+ Copy
159+
+ SomeTrait
160+
+ AAAAAAAA
161+
+ BBBBBBB
162+
+ CCCCCCCCC
163+
+ DDDDDDD;
164+
165+
trait B<'a, 'b, 'c,T> = Debug<'a, T> where for<'b> &'b Self:
166+
Send
167+
+ Clone
168+
+ Copy
169+
+ SomeTrait
170+
+ AAAAAAAA
171+
+ BBBBBBB
172+
+ CCCCCCCCC
173+
+ DDDDDDD
174+
+ DDDDDDDD
175+
+ DDDDDDDDD
176+
+ EEEEEEE;

tests/target/trait.rs

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,3 +160,54 @@ pub mod test {
160160
{
161161
}
162162
}
163+
164+
// Trait aliases with where clauses.
165+
trait A = where for<'b> &'b Self: Send;
166+
167+
trait B = where for<'b> &'b Self: Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCC;
168+
trait B =
169+
where for<'b> &'b Self: Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCCC;
170+
trait B = where
171+
for<'b> &'b Self:
172+
Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCCCCCCCCCCCCCCCC;
173+
trait B = where
174+
for<'b> &'b Self: Send
175+
+ Clone
176+
+ Copy
177+
+ SomeTrait
178+
+ AAAAAAAA
179+
+ BBBBBBB
180+
+ CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC;
181+
182+
trait B = where
183+
for<'b> &'b Self: Send
184+
+ Clone
185+
+ Copy
186+
+ SomeTrait
187+
+ AAAAAAAA
188+
+ BBBBBBB
189+
+ CCCCCCCCC
190+
+ DDDDDDD
191+
+ DDDDDDDD
192+
+ DDDDDDDDD
193+
+ EEEEEEE;
194+
195+
trait A<'a, 'b, 'c> = Debug<T> + Foo where for<'b> &'b Self: Send;
196+
197+
trait B<'a, 'b, 'c> = Debug<T> + Foo
198+
where
199+
for<'b> &'b Self: Send + Clone + Copy + SomeTrait + AAAAAAAA + BBBBBBB + CCCCCCCCC + DDDDDDD;
200+
201+
trait B<'a, 'b, 'c, T> = Debug<'a, T>
202+
where
203+
for<'b> &'b Self: Send
204+
+ Clone
205+
+ Copy
206+
+ SomeTrait
207+
+ AAAAAAAA
208+
+ BBBBBBB
209+
+ CCCCCCCCC
210+
+ DDDDDDD
211+
+ DDDDDDDD
212+
+ DDDDDDDDD
213+
+ EEEEEEE;

0 commit comments

Comments
 (0)