summaryrefslogtreecommitdiffstats
path: root/src/test/ui/issues/issue-5708.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/issues/issue-5708.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/issues/issue-5708.rs')
-rw-r--r--src/test/ui/issues/issue-5708.rs55
1 files changed, 0 insertions, 55 deletions
diff --git a/src/test/ui/issues/issue-5708.rs b/src/test/ui/issues/issue-5708.rs
deleted file mode 100644
index 6fe9943d3..000000000
--- a/src/test/ui/issues/issue-5708.rs
+++ /dev/null
@@ -1,55 +0,0 @@
-// run-pass
-#![allow(unused_variables)]
-/*
-# ICE when returning struct with reference to trait
-
-A function which takes a reference to a trait and returns a
-struct with that reference results in an ICE.
-
-This does not occur with concrete types, only with references
-to traits.
-*/
-
-
-// original
-trait Inner {
- fn print(&self);
-}
-
-impl Inner for isize {
- fn print(&self) { print!("Inner: {}\n", *self); }
-}
-
-struct Outer<'a> {
- inner: &'a (dyn Inner+'a)
-}
-
-impl<'a> Outer<'a> {
- fn new(inner: &dyn Inner) -> Outer {
- Outer {
- inner: inner
- }
- }
-}
-
-pub fn main() {
- let inner: isize = 5;
- let outer = Outer::new(&inner as &dyn Inner);
- outer.inner.print();
-}
-
-
-// minimal
-pub trait MyTrait<T> {
- fn dummy(&self, t: T) -> T { panic!() }
-}
-
-pub struct MyContainer<'a, T:'a> {
- foos: Vec<&'a (dyn MyTrait<T>+'a)> ,
-}
-
-impl<'a, T> MyContainer<'a, T> {
- pub fn add (&mut self, foo: &'a dyn MyTrait<T>) {
- self.foos.push(foo);
- }
-}