Skip to content

Commit 9247d0d

Browse files
Add some more tests
1 parent 83de2a8 commit 9247d0d

File tree

7 files changed

+67
-0
lines changed

7 files changed

+67
-0
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
error: lifetimes cannot use keyword names
2+
--> $DIR/gen-lt.rs:11:11
3+
|
4+
LL | fn gen_lt<'gen>() {}
5+
| ^^^^
6+
7+
error: aborting due to 1 previous error
8+

tests/ui/lifetimes/raw/gen-lt.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
//@ revisions: e2021 e2024
2+
3+
//@[e2021] edition:2021
4+
//@[e2024] edition:2024
5+
//@[e2024] compile-flags: -Zunstable-options
6+
7+
//@[e2021] check-pass
8+
9+
fn raw_gen_lt<'r#gen>() {}
10+
11+
fn gen_lt<'gen>() {}
12+
//[e2024]~^ ERROR lifetimes cannot use keyword names
13+
14+
fn main() {}

tests/ui/lifetimes/raw/macro-lt.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
//@ check-pass
2+
3+
macro_rules! lifetime {
4+
($lt:lifetime) => {
5+
fn hello<$lt>() {}
6+
}
7+
}
8+
9+
lifetime!('r#struct);
10+
11+
fn main() {}

tests/ui/lifetimes/raw/prim-lt.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
//@ check-pass
2+
3+
// Checks a primitive name can be defined as a lifetime.
4+
5+
fn foo<'r#i32>() {}
6+
7+
fn main() {}

tests/ui/lifetimes/raw/simple.rs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
//@ check-pass
2+
3+
fn foo<'r#struct>() {}
4+
5+
fn hr<T>() where for<'r#struct> T: Into<&'r#struct ()> {}
6+
7+
trait Foo<'r#struct> {}
8+
9+
trait Bar<'r#struct> {
10+
fn method(&'r#struct self) {}
11+
fn method2(self: &'r#struct Self) {}
12+
}
13+
14+
fn labeled() {
15+
'r#struct: loop {
16+
break 'r#struct;
17+
}
18+
}
19+
20+
fn main() {}

tests/ui/lifetimes/raw/static-lt.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
//@ check-pass
2+
3+
// Makes sure that `'r#static` is `'static`
4+
5+
const FOO: &'r#static str = "hello, world";
6+
7+
fn main() {}

0 commit comments

Comments
 (0)