e1d8ad3fb0
parser recovery (so that expected errors match up) I'm opting into parser recovery in all these cases out of expediency, not because the error messages you get with recovery enabled are actually all that usable in all cases listed.
35 lines
1.2 KiB
Rust
35 lines
1.2 KiB
Rust
// Copyright 2013 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 <LICENSE-APACHE or
|
|
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
|
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
|
// option. This file may not be copied, modified, or distributed
|
|
// except according to those terms.
|
|
|
|
// compile-flags: -Z parse-only -Z continue-parse-after-error
|
|
|
|
|
|
trait Serializable<'self, T> { //~ ERROR no longer a special lifetime
|
|
fn serialize(val : &'self T) -> Vec<u8> ; //~ ERROR no longer a special lifetime
|
|
fn deserialize(repr : &[u8]) -> &'self T; //~ ERROR no longer a special lifetime
|
|
}
|
|
|
|
impl<'self> Serializable<str> for &'self str { //~ ERROR no longer a special lifetime
|
|
//~^ ERROR no longer a special lifetime
|
|
fn serialize(val : &'self str) -> Vec<u8> { //~ ERROR no longer a special lifetime
|
|
vec!(1)
|
|
}
|
|
fn deserialize(repr: &[u8]) -> &'self str { //~ ERROR no longer a special lifetime
|
|
"hi"
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
println!("hello");
|
|
let x = "foo".to_string();
|
|
let y = x;
|
|
println!("{}", y);
|
|
}
|