// Copyright 2012 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 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. // pretty-expanded FIXME #23616 trait Serializer { } trait Serializable { fn serialize(&self, s: S); } impl Serializable for isize { fn serialize(&self, _s: S) { } } struct F { a: A } impl Serializable for F { fn serialize(&self, s: S) { self.a.serialize(s); } } impl Serializer for isize { } pub fn main() { let foo = F { a: 1 }; foo.serialize(1); let bar = F { a: F {a: 1 } }; bar.serialize(2); }