From 36d22d82aa202bb199967e9512281e9a53db42c9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 21:33:14 +0200 Subject: Adding upstream version 115.7.0esr. Signed-off-by: Daniel Baumann --- third_party/rust/inherent/tests/ui/blanket-impl.rs | 12 ++++++++++++ third_party/rust/inherent/tests/ui/blanket-impl.stderr | 7 +++++++ third_party/rust/inherent/tests/ui/not-trait-impl.rs | 10 ++++++++++ .../rust/inherent/tests/ui/not-trait-impl.stderr | 7 +++++++ third_party/rust/inherent/tests/ui/not-visible.rs | 18 ++++++++++++++++++ third_party/rust/inherent/tests/ui/not-visible.stderr | 8 ++++++++ 6 files changed, 62 insertions(+) create mode 100644 third_party/rust/inherent/tests/ui/blanket-impl.rs create mode 100644 third_party/rust/inherent/tests/ui/blanket-impl.stderr create mode 100644 third_party/rust/inherent/tests/ui/not-trait-impl.rs create mode 100644 third_party/rust/inherent/tests/ui/not-trait-impl.stderr create mode 100644 third_party/rust/inherent/tests/ui/not-visible.rs create mode 100644 third_party/rust/inherent/tests/ui/not-visible.stderr (limited to 'third_party/rust/inherent/tests/ui') diff --git a/third_party/rust/inherent/tests/ui/blanket-impl.rs b/third_party/rust/inherent/tests/ui/blanket-impl.rs new file mode 100644 index 0000000000..d775c5e937 --- /dev/null +++ b/third_party/rust/inherent/tests/ui/blanket-impl.rs @@ -0,0 +1,12 @@ +use inherent::inherent; + +trait A { + fn a(&self); +} + +#[inherent] +impl A for T { + fn a(&self) {} +} + +fn main() {} diff --git a/third_party/rust/inherent/tests/ui/blanket-impl.stderr b/third_party/rust/inherent/tests/ui/blanket-impl.stderr new file mode 100644 index 0000000000..986641cea2 --- /dev/null +++ b/third_party/rust/inherent/tests/ui/blanket-impl.stderr @@ -0,0 +1,7 @@ +error[E0118]: no nominal type found for inherent implementation + --> tests/ui/blanket-impl.rs:8:1 + | +8 | impl A for T { + | ^^^^^^^^^^^^^^^ impl requires a nominal type + | + = note: either implement a trait on it or create a newtype to wrap it instead diff --git a/third_party/rust/inherent/tests/ui/not-trait-impl.rs b/third_party/rust/inherent/tests/ui/not-trait-impl.rs new file mode 100644 index 0000000000..a9a6a11628 --- /dev/null +++ b/third_party/rust/inherent/tests/ui/not-trait-impl.rs @@ -0,0 +1,10 @@ +use inherent::inherent; + +struct Struct; + +#[inherent] +impl Struct { + fn f() {} +} + +fn main() {} diff --git a/third_party/rust/inherent/tests/ui/not-trait-impl.stderr b/third_party/rust/inherent/tests/ui/not-trait-impl.stderr new file mode 100644 index 0000000000..ea723e86b0 --- /dev/null +++ b/third_party/rust/inherent/tests/ui/not-trait-impl.stderr @@ -0,0 +1,7 @@ +error: must be placed on a trait impl + --> tests/ui/not-trait-impl.rs:5:1 + | +5 | #[inherent] + | ^^^^^^^^^^^ + | + = note: this error originates in the attribute macro `inherent` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/third_party/rust/inherent/tests/ui/not-visible.rs b/third_party/rust/inherent/tests/ui/not-visible.rs new file mode 100644 index 0000000000..faccf90ff4 --- /dev/null +++ b/third_party/rust/inherent/tests/ui/not-visible.rs @@ -0,0 +1,18 @@ +mod types { + use inherent::inherent; + + trait Trait { + fn f(); + } + + pub struct Struct; + + #[inherent] + impl Trait for Struct { + fn f() {} + } +} + +fn main() { + types::Struct::f(); +} diff --git a/third_party/rust/inherent/tests/ui/not-visible.stderr b/third_party/rust/inherent/tests/ui/not-visible.stderr new file mode 100644 index 0000000000..9fb9d7b892 --- /dev/null +++ b/third_party/rust/inherent/tests/ui/not-visible.stderr @@ -0,0 +1,8 @@ +error[E0624]: associated function `f` is private + --> tests/ui/not-visible.rs:17:20 + | +12 | fn f() {} + | ------ private associated function defined here +... +17 | types::Struct::f(); + | ^ private associated function -- cgit v1.2.3