diff --git a/src/test/compile-fail/issue-3973.rs b/src/test/compile-fail/issue-3973.rs new file mode 100644 index 00000000000..6c977840c22 --- /dev/null +++ b/src/test/compile-fail/issue-3973.rs @@ -0,0 +1,31 @@ +// 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. + +// xfail-test + +struct Point { + mut x: float, + mut y: float, +} + +impl Point : ToStr { //~ ERROR implements a method not defined in the trait + static fn new(x: float, y: float) -> Point { + Point { x: x, y: y } + } + + pure fn to_str() -> ~str { + fmt!("(%f, %f)", self.x, self.y) + } +} + +fn main() { + let p = Point::new(0.0f, 0.0f); + io::println(p.to_str()); +}