summaryrefslogtreecommitdiffstats
path: root/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
commitdc0db358abe19481e475e10c32149b53370f1a1c (patch)
treeab8ce99c4b255ce46f99ef402c27916055b899ee /tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs
parentReleasing progress-linux version 1.71.1+dfsg1-2~progress7.99u1. (diff)
downloadrustc-dc0db358abe19481e475e10c32149b53370f1a1c.tar.xz
rustc-dc0db358abe19481e475e10c32149b53370f1a1c.zip
Merging upstream version 1.72.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs')
-rw-r--r--tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs50
1 files changed, 0 insertions, 50 deletions
diff --git a/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs b/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs
deleted file mode 100644
index f9ae1429e..000000000
--- a/tests/ui/higher-rank-trait-bounds/hrtb-higher-ranker-supertraits-transitive.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-// Test HRTB supertraits with several levels of expansion required.
-
-trait Foo<'tcx>
-{
- fn foo(&'tcx self) -> &'tcx isize;
-}
-
-trait Bar<'ccx>
- : for<'tcx> Foo<'tcx>
-{
- fn bar(&'ccx self) -> &'ccx isize;
-}
-
-trait Baz
- : for<'ccx> Bar<'ccx>
-{
- fn dummy(&self);
-}
-
-trait Qux
- : Bar<'static>
-{
- fn dummy(&self);
-}
-
-fn want_foo_for_any_tcx<F>(f: &F)
- where F : for<'tcx> Foo<'tcx>
-{
-}
-
-fn want_bar_for_any_ccx<B>(b: &B)
- where B : for<'ccx> Bar<'ccx>
-{
-}
-
-fn want_baz<B>(b: &B)
- where B : Baz
-{
- want_foo_for_any_tcx(b);
- want_bar_for_any_ccx(b);
-}
-
-fn want_qux<B>(b: &B)
- where B : Qux
-{
- want_foo_for_any_tcx(b);
- want_bar_for_any_ccx(b); //~ ERROR
-}
-
-fn main() {}