summaryrefslogtreecommitdiffstats
path: root/src/test/ui/regions/regions-trait-object-1.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/regions/regions-trait-object-1.rs')
-rw-r--r--src/test/ui/regions/regions-trait-object-1.rs35
1 files changed, 0 insertions, 35 deletions
diff --git a/src/test/ui/regions/regions-trait-object-1.rs b/src/test/ui/regions/regions-trait-object-1.rs
deleted file mode 100644
index e2520d978..000000000
--- a/src/test/ui/regions/regions-trait-object-1.rs
+++ /dev/null
@@ -1,35 +0,0 @@
-// run-pass
-// This is a regression test for something that only came up while
-// attempting to bootstrap librustc_ast; it is adapted from
-// `rustc_ast::ext::tt::generic_extension`.
-
-
-pub struct E<'a> {
- pub f: &'a u8,
-}
-impl<'b> E<'b> {
- pub fn m(&self) -> &'b u8 { self.f }
-}
-
-pub struct P<'c> {
- pub g: &'c u8,
-}
-pub trait M {
- fn n(&self) -> u8;
-}
-impl<'d> M for P<'d> {
- fn n(&self) -> u8 { *self.g }
-}
-
-fn extension<'e>(x: &'e E<'e>) -> Box<dyn M+'e> {
- loop {
- let p = P { g: x.m() };
- return Box::new(p) as Box<dyn M+'e>;
- }
-}
-
-fn main() {
- let w = E { f: &10 };
- let o = extension(&w);
- assert_eq!(o.n(), 10);
-}