21 lines
414 B
Rust
21 lines
414 B
Rust
//@ check-pass
|
|
//@ compile-flags: --emit=mir,link -Zmir-opt-level=4
|
|
// Checks that we don't ICE due to attempting to run const prop
|
|
// on a function with unsatisifable 'where' clauses
|
|
|
|
#![allow(unused)]
|
|
|
|
trait A {
|
|
fn foo(&self) -> Self where Self: Copy;
|
|
}
|
|
|
|
impl A for [fn(&())] {
|
|
fn foo(&self) -> Self where Self: Copy { *(&[] as &[_]) }
|
|
}
|
|
|
|
impl A for i32 {
|
|
fn foo(&self) -> Self { 3 }
|
|
}
|
|
|
|
fn main() {}
|