49337938cb
This commit reverses the variance used when relating types from the type annotation of an associated constant - this matches the behaviour of the lexical borrow checker and fixes a bug whereby matching a `&'a str` against a `&'static str` would produce an error.
23 lines
281 B
Rust
23 lines
281 B
Rust
#![feature(nll)]
|
|
|
|
// compile-pass
|
|
|
|
trait Foo {
|
|
const BLAH: &'static str;
|
|
}
|
|
|
|
struct Placeholder;
|
|
|
|
impl Foo for Placeholder {
|
|
const BLAH: &'static str = "hi";
|
|
}
|
|
|
|
fn foo(x: &str) {
|
|
match x {
|
|
<Placeholder as Foo>::BLAH => { }
|
|
_ => { }
|
|
}
|
|
}
|
|
|
|
fn main() {}
|