summaryrefslogtreecommitdiffstats
path: root/src/test/ui/incoherent-inherent-impls
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/ui/incoherent-inherent-impls
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/incoherent-inherent-impls')
-rw-r--r--src/test/ui/incoherent-inherent-impls/auxiliary/extern-crate.rs9
-rw-r--r--src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.rs40
-rw-r--r--src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.stderr115
-rw-r--r--src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.rs18
-rw-r--r--src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.stderr44
5 files changed, 0 insertions, 226 deletions
diff --git a/src/test/ui/incoherent-inherent-impls/auxiliary/extern-crate.rs b/src/test/ui/incoherent-inherent-impls/auxiliary/extern-crate.rs
deleted file mode 100644
index 22f0d912c..000000000
--- a/src/test/ui/incoherent-inherent-impls/auxiliary/extern-crate.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-#![feature(rustc_attrs)]
-
-#[rustc_has_incoherent_inherent_impls]
-pub struct StructWithAttr;
-pub struct StructNoAttr;
-
-#[rustc_has_incoherent_inherent_impls]
-pub enum EnumWithAttr {}
-pub enum EnumNoAttr {}
diff --git a/src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.rs b/src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.rs
deleted file mode 100644
index 0f7282bec..000000000
--- a/src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-// aux-build:extern-crate.rs
-#![feature(rustc_attrs)]
-extern crate extern_crate;
-
-impl extern_crate::StructWithAttr {
- //~^ ERROR cannot define inherent `impl` for a type outside of the crate
- fn foo() {}
-}
-impl extern_crate::StructWithAttr {
- #[rustc_allow_incoherent_impl]
- fn bar() {}
-}
-impl extern_crate::StructNoAttr {
- //~^ ERROR cannot define inherent `impl` for a type outside of the crate
- fn foo() {}
-}
-impl extern_crate::StructNoAttr {
- //~^ ERROR cannot define inherent `impl` for a type outside of the crate
- #[rustc_allow_incoherent_impl]
- fn bar() {}
-}
-impl extern_crate::EnumWithAttr {
- //~^ ERROR cannot define inherent `impl` for a type outside of the crate
- fn foo() {}
-}
-impl extern_crate::EnumWithAttr {
- #[rustc_allow_incoherent_impl]
- fn bar() {}
-}
-impl extern_crate::EnumNoAttr {
- //~^ ERROR cannot define inherent `impl` for a type outside of the crate
- fn foo() {}
-}
-impl extern_crate::EnumNoAttr {
- //~^ ERROR cannot define inherent `impl` for a type outside of the crate
- #[rustc_allow_incoherent_impl]
- fn bar() {}
-}
-
-fn main() {}
diff --git a/src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.stderr b/src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.stderr
deleted file mode 100644
index 8f7082511..000000000
--- a/src/test/ui/incoherent-inherent-impls/needs-has-incoherent-impls.stderr
+++ /dev/null
@@ -1,115 +0,0 @@
-error[E0390]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/needs-has-incoherent-impls.rs:5:1
- |
-LL | / impl extern_crate::StructWithAttr {
-LL | |
-LL | | fn foo() {}
-LL | | }
- | |_^
- |
- = help: consider moving this inherent impl into the crate defining the type if possible
-help: alternatively add `#[rustc_allow_incoherent_impl]` to the relevant impl items
- --> $DIR/needs-has-incoherent-impls.rs:7:5
- |
-LL | fn foo() {}
- | ^^^^^^^^^^^
-
-error[E0390]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/needs-has-incoherent-impls.rs:13:1
- |
-LL | / impl extern_crate::StructNoAttr {
-LL | |
-LL | | fn foo() {}
-LL | | }
- | |_^
- |
- = help: consider moving this inherent impl into the crate defining the type if possible
-help: alternatively add `#[rustc_has_incoherent_inherent_impls]` to the type and `#[rustc_allow_incoherent_impl]` to the relevant impl items
- --> $DIR/needs-has-incoherent-impls.rs:13:1
- |
-LL | / impl extern_crate::StructNoAttr {
-LL | |
-LL | | fn foo() {}
-LL | | }
- | |_^
-
-error[E0390]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/needs-has-incoherent-impls.rs:17:1
- |
-LL | / impl extern_crate::StructNoAttr {
-LL | |
-LL | | #[rustc_allow_incoherent_impl]
-LL | | fn bar() {}
-LL | | }
- | |_^
- |
- = help: consider moving this inherent impl into the crate defining the type if possible
-help: alternatively add `#[rustc_has_incoherent_inherent_impls]` to the type and `#[rustc_allow_incoherent_impl]` to the relevant impl items
- --> $DIR/needs-has-incoherent-impls.rs:17:1
- |
-LL | / impl extern_crate::StructNoAttr {
-LL | |
-LL | | #[rustc_allow_incoherent_impl]
-LL | | fn bar() {}
-LL | | }
- | |_^
-
-error[E0390]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/needs-has-incoherent-impls.rs:22:1
- |
-LL | / impl extern_crate::EnumWithAttr {
-LL | |
-LL | | fn foo() {}
-LL | | }
- | |_^
- |
- = help: consider moving this inherent impl into the crate defining the type if possible
-help: alternatively add `#[rustc_allow_incoherent_impl]` to the relevant impl items
- --> $DIR/needs-has-incoherent-impls.rs:24:5
- |
-LL | fn foo() {}
- | ^^^^^^^^^^^
-
-error[E0390]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/needs-has-incoherent-impls.rs:30:1
- |
-LL | / impl extern_crate::EnumNoAttr {
-LL | |
-LL | | fn foo() {}
-LL | | }
- | |_^
- |
- = help: consider moving this inherent impl into the crate defining the type if possible
-help: alternatively add `#[rustc_has_incoherent_inherent_impls]` to the type and `#[rustc_allow_incoherent_impl]` to the relevant impl items
- --> $DIR/needs-has-incoherent-impls.rs:30:1
- |
-LL | / impl extern_crate::EnumNoAttr {
-LL | |
-LL | | fn foo() {}
-LL | | }
- | |_^
-
-error[E0390]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/needs-has-incoherent-impls.rs:34:1
- |
-LL | / impl extern_crate::EnumNoAttr {
-LL | |
-LL | | #[rustc_allow_incoherent_impl]
-LL | | fn bar() {}
-LL | | }
- | |_^
- |
- = help: consider moving this inherent impl into the crate defining the type if possible
-help: alternatively add `#[rustc_has_incoherent_inherent_impls]` to the type and `#[rustc_allow_incoherent_impl]` to the relevant impl items
- --> $DIR/needs-has-incoherent-impls.rs:34:1
- |
-LL | / impl extern_crate::EnumNoAttr {
-LL | |
-LL | | #[rustc_allow_incoherent_impl]
-LL | | fn bar() {}
-LL | | }
- | |_^
-
-error: aborting due to 6 previous errors
-
-For more information about this error, try `rustc --explain E0390`.
diff --git a/src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.rs b/src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.rs
deleted file mode 100644
index 62c249e58..000000000
--- a/src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-// aux-build:extern-crate.rs
-extern crate extern_crate;
-
-impl extern_crate::StructWithAttr {}
-//~^ ERROR cannot define inherent `impl` for a type outside of the crate
-
-impl extern_crate::StructNoAttr {}
-//~^ ERROR cannot define inherent `impl` for a type outside of the crate
-
-impl extern_crate::EnumWithAttr {}
-//~^ ERROR cannot define inherent `impl` for a type outside of the crate
-
-impl extern_crate::EnumNoAttr {}
-//~^ ERROR cannot define inherent `impl` for a type outside of the crate
-
-impl f32 {} //~ ERROR cannot define inherent `impl` for primitive types
-
-fn main() {}
diff --git a/src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.stderr b/src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.stderr
deleted file mode 100644
index b3f8b51d0..000000000
--- a/src/test/ui/incoherent-inherent-impls/no-attr-empty-impl.stderr
+++ /dev/null
@@ -1,44 +0,0 @@
-error[E0116]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/no-attr-empty-impl.rs:4:1
- |
-LL | impl extern_crate::StructWithAttr {}
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl for type defined outside of crate.
- |
- = note: define and implement a trait or new type instead
-
-error[E0116]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/no-attr-empty-impl.rs:7:1
- |
-LL | impl extern_crate::StructNoAttr {}
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl for type defined outside of crate.
- |
- = note: define and implement a trait or new type instead
-
-error[E0116]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/no-attr-empty-impl.rs:10:1
- |
-LL | impl extern_crate::EnumWithAttr {}
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl for type defined outside of crate.
- |
- = note: define and implement a trait or new type instead
-
-error[E0116]: cannot define inherent `impl` for a type outside of the crate where the type is defined
- --> $DIR/no-attr-empty-impl.rs:13:1
- |
-LL | impl extern_crate::EnumNoAttr {}
- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ impl for type defined outside of crate.
- |
- = note: define and implement a trait or new type instead
-
-error[E0390]: cannot define inherent `impl` for primitive types
- --> $DIR/no-attr-empty-impl.rs:16:6
- |
-LL | impl f32 {}
- | ^^^
- |
- = help: consider using an extension trait instead
-
-error: aborting due to 5 previous errors
-
-Some errors have detailed explanations: E0116, E0390.
-For more information about an error, try `rustc --explain E0116`.