//@ check-pass | |
//@ compile-flags: --emit=mir,link | |
// Force mir to be emitted, to ensure that const | |
// propagation doesn't ICE on a function | |
// with an 'impossible' body. See issue #67696 | |
// Inconsistent bounds with trait implementations | |
#![feature(trivial_bounds)] | |
#![allow(unused)] | |
trait A { | |
fn foo(&self) -> Self where Self: Copy; | |
} | |
impl A for str { | |
fn foo(&self) -> Self where Self: Copy { *"" } | |
} | |
impl A for i32 { | |
fn foo(&self) -> Self { 3 } | |
} | |
fn main() {} |