From cecf9ead40352f77e2e83765f0f6a796277299ec Mon Sep 17 00:00:00 2001 From: xizheyin Date: Tue, 1 Jul 2025 20:34:45 +0800 Subject: [PATCH] Add test raw-underscore-lifetime.rs Signed-off-by: xizheyin --- .../raw-underscore-lifetime.rs | 10 ++++++++++ .../raw-underscore-lifetime.stderr | 15 +++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 tests/ui/underscore-lifetime/raw-underscore-lifetime.rs create mode 100644 tests/ui/underscore-lifetime/raw-underscore-lifetime.stderr diff --git a/tests/ui/underscore-lifetime/raw-underscore-lifetime.rs b/tests/ui/underscore-lifetime/raw-underscore-lifetime.rs new file mode 100644 index 000000000000..9ab040f2eab8 --- /dev/null +++ b/tests/ui/underscore-lifetime/raw-underscore-lifetime.rs @@ -0,0 +1,10 @@ +// This test is to ensure that the raw underscore lifetime won't emit two duplicate errors. +// See issue #143152 + +//@ edition: 2021 + +fn f<'r#_>(){} +//~^ ERROR `_` cannot be a raw lifetime +//~| ERROR `'_` cannot be used here [E0637] + +fn main() {} diff --git a/tests/ui/underscore-lifetime/raw-underscore-lifetime.stderr b/tests/ui/underscore-lifetime/raw-underscore-lifetime.stderr new file mode 100644 index 000000000000..39627d8a4763 --- /dev/null +++ b/tests/ui/underscore-lifetime/raw-underscore-lifetime.stderr @@ -0,0 +1,15 @@ +error: `_` cannot be a raw lifetime + --> $DIR/raw-underscore-lifetime.rs:6:6 + | +LL | fn f<'r#_>(){} + | ^^^^ + +error[E0637]: `'_` cannot be used here + --> $DIR/raw-underscore-lifetime.rs:6:6 + | +LL | fn f<'r#_>(){} + | ^^^^ `'_` is a reserved lifetime name + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0637`.