summaryrefslogtreecommitdiffstats
path: root/src/test/ui/issues/issue-50687-ice-on-borrow.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:18:25 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:18:25 +0000
commit5363f350887b1e5b5dd21a86f88c8af9d7fea6da (patch)
tree35ca005eb6e0e9a1ba3bb5dbc033209ad445dc17 /src/test/ui/issues/issue-50687-ice-on-borrow.rs
parentAdding debian version 1.66.0+dfsg1-1. (diff)
downloadrustc-5363f350887b1e5b5dd21a86f88c8af9d7fea6da.tar.xz
rustc-5363f350887b1e5b5dd21a86f88c8af9d7fea6da.zip
Merging upstream version 1.67.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/issues/issue-50687-ice-on-borrow.rs')
-rw-r--r--src/test/ui/issues/issue-50687-ice-on-borrow.rs41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/test/ui/issues/issue-50687-ice-on-borrow.rs b/src/test/ui/issues/issue-50687-ice-on-borrow.rs
deleted file mode 100644
index 7a8a12c2a..000000000
--- a/src/test/ui/issues/issue-50687-ice-on-borrow.rs
+++ /dev/null
@@ -1,41 +0,0 @@
-// This previously caused an ICE at:
-// librustc/traits/structural_impls.rs:180: impossible case reached
-
-#![no_main]
-
-use std::borrow::Borrow;
-use std::io;
-use std::io::Write;
-
-trait Constraint {}
-
-struct Container<T> {
- t: T,
-}
-
-struct Borrowed;
-struct Owned;
-
-impl<'a, T> Write for &'a Container<T>
-where
- T: Constraint,
- &'a T: Write,
-{
- fn write(&mut self, buf: &[u8]) -> io::Result<usize> {
- Ok(buf.len())
- }
-
- fn flush(&mut self) -> io::Result<()> {
- Ok(())
- }
-}
-
-impl Borrow<Borrowed> for Owned {
- fn borrow(&self) -> &Borrowed {
- &Borrowed
- }
-}
-
-fn func(owned: Owned) {
- let _: () = Borrow::borrow(&owned); //~ ERROR mismatched types
-}