summaryrefslogtreecommitdiffstats
path: root/src/test/ui/ufcs/ufcs-partially-resolved.rs
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/ufcs/ufcs-partially-resolved.rs
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/ufcs/ufcs-partially-resolved.rs')
-rw-r--r--src/test/ui/ufcs/ufcs-partially-resolved.rs56
1 files changed, 0 insertions, 56 deletions
diff --git a/src/test/ui/ufcs/ufcs-partially-resolved.rs b/src/test/ui/ufcs/ufcs-partially-resolved.rs
deleted file mode 100644
index e6470aa6d..000000000
--- a/src/test/ui/ufcs/ufcs-partially-resolved.rs
+++ /dev/null
@@ -1,56 +0,0 @@
-#![feature(associated_type_defaults)]
-
-trait Tr {
- type Y = u16;
- fn Y() {}
-}
-impl Tr for u8 {}
-
-trait Dr {
- type X = u16;
- fn Z() {}
-}
-impl Dr for u8 {}
-
-enum E { Y }
-type A = u32;
-
-fn main() {
- let _: <u8 as Tr>::N; //~ ERROR cannot find associated type `N` in trait `Tr`
- let _: <u8 as E>::N; //~ ERROR cannot find associated type `N` in enum `E`
- let _: <u8 as A>::N; //~ ERROR cannot find associated type `N` in `A`
- <u8 as Tr>::N; //~ ERROR cannot find method or associated constant `N` in trait `Tr`
- <u8 as E>::N; //~ ERROR cannot find method or associated constant `N` in enum `E`
- <u8 as A>::N; //~ ERROR cannot find method or associated constant `N` in `A`
- let _: <u8 as Tr>::Y; // OK
- let _: <u8 as E>::Y; //~ ERROR expected associated type, found variant `E::Y`
- <u8 as Tr>::Y; // OK
- <u8 as E>::Y; //~ ERROR expected method or associated constant, found unit variant `E::Y`
-
- let _: <u8 as Tr>::N::NN; //~ ERROR cannot find associated type `N` in trait `Tr`
- let _: <u8 as E>::N::NN; //~ ERROR cannot find associated type `N` in enum `E`
- let _: <u8 as A>::N::NN; //~ ERROR cannot find associated type `N` in `A`
- <u8 as Tr>::N::NN; //~ ERROR cannot find associated type `N` in trait `Tr`
- <u8 as E>::N::NN; //~ ERROR cannot find associated type `N` in enum `E`
- <u8 as A>::N::NN; //~ ERROR cannot find associated type `N` in `A`
- let _: <u8 as Tr>::Y::NN; //~ ERROR ambiguous associated type
- let _: <u8 as E>::Y::NN; //~ ERROR expected associated type, found variant `E::Y`
- <u8 as Tr>::Y::NN; //~ ERROR no associated item named `NN` found for type `u16`
- <u8 as E>::Y::NN; //~ ERROR expected associated type, found variant `E::Y`
-
- let _: <u8 as Tr::N>::NN; //~ ERROR cannot find associated type `NN` in `Tr::N`
- let _: <u8 as E::N>::NN; //~ ERROR cannot find associated type `NN` in `E::N`
- let _: <u8 as A::N>::NN; //~ ERROR cannot find associated type `NN` in `A::N`
- <u8 as Tr::N>::NN; //~ ERROR cannot find method or associated constant `NN` in `Tr::N`
- <u8 as E::N>::NN; //~ ERROR cannot find method or associated constant `NN` in `E::N`
- <u8 as A::N>::NN; //~ ERROR cannot find method or associated constant `NN` in `A::N`
- let _: <u8 as Tr::Y>::NN; //~ ERROR cannot find associated type `NN` in `Tr::Y`
- let _: <u8 as E::Y>::NN; //~ ERROR failed to resolve: `Y` is a variant, not a module
- <u8 as Tr::Y>::NN; //~ ERROR cannot find method or associated constant `NN` in `Tr::Y`
- <u8 as E::Y>::NN; //~ ERROR failed to resolve: `Y` is a variant, not a module
-
- let _: <u8 as Dr>::Z; //~ ERROR expected associated type, found associated function `Dr::Z`
- <u8 as Dr>::X; //~ ERROR expected method or associated constant, found associated type `Dr::X`
- let _: <u8 as Dr>::Z::N; //~ ERROR expected associated type, found associated function `Dr::Z`
- <u8 as Dr>::X::N; //~ ERROR no associated item named `N` found for type `u16`
-}