diff options
Diffstat (limited to 'src/test/ui/issues/issue-10412.rs')
-rw-r--r-- | src/test/ui/issues/issue-10412.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-10412.rs b/src/test/ui/issues/issue-10412.rs new file mode 100644 index 000000000..0de170161 --- /dev/null +++ b/src/test/ui/issues/issue-10412.rs @@ -0,0 +1,27 @@ +trait Serializable<'self, T> { + //~^ ERROR lifetimes cannot use keyword names + fn serialize(val: &'self T) -> Vec<u8>; //~ ERROR lifetimes cannot use keyword names + fn deserialize(repr: &[u8]) -> &'self T; //~ ERROR lifetimes cannot use keyword names +} + +impl<'self> Serializable<str> for &'self str { + //~^ ERROR lifetimes cannot use keyword names + //~| ERROR lifetimes cannot use keyword names + //~| ERROR implicit elided lifetime not allowed here + //~| ERROR the size for values of type `str` cannot be known at compilation time [E0277] + fn serialize(val: &'self str) -> Vec<u8> { + //~^ ERROR lifetimes cannot use keyword names + vec![1] + } + fn deserialize(repr: &[u8]) -> &'self str { + //~^ ERROR lifetimes cannot use keyword names + "hi" + } +} + +fn main() { + println!("hello"); + let x = "foo".to_string(); + let y = x; + println!("{}", y); +} |