From 079bfad72d1ec329a5ecdb134960777ae4320303 Mon Sep 17 00:00:00 2001 From: Nick Hamann Date: Wed, 24 Jun 2015 12:42:05 -0500 Subject: [PATCH] Add a regression test for #19538. Closes #19538. --- src/test/compile-fail/issue-19538.rs | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/test/compile-fail/issue-19538.rs diff --git a/src/test/compile-fail/issue-19538.rs b/src/test/compile-fail/issue-19538.rs new file mode 100644 index 0000000000000..b9c90755b2c73 --- /dev/null +++ b/src/test/compile-fail/issue-19538.rs @@ -0,0 +1,29 @@ +// Copyright 2015 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +trait Foo { + fn foo(&self, val: T); +} + +trait Bar: Foo { } + +pub struct Thing; + +impl Foo for Thing { + fn foo(&self, val: T) { } +} + +impl Bar for Thing { } + +fn main() { + let mut thing = Thing; + let test: &mut Bar = &mut thing; + //~^ ERROR cannot convert to a trait object because trait `Bar` is not object-safe +}