diff --git a/src/test/compile-fail/issue-5060-fail.rs b/src/test/compile-fail/issue-5060-fail.rs new file mode 100644 index 00000000000..c1795d31485 --- /dev/null +++ b/src/test/compile-fail/issue-5060-fail.rs @@ -0,0 +1,29 @@ +// 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + + +use std::io; + +macro_rules! print_hd_tl ( + ($field_hd:ident, $($field_tl:ident),+) => ({ + io::print(stringify!($field)); //~ ERROR unknown macro variable + io::print("::["); + $( + io::print(stringify!($field_tl)); + io::print(", "); + )+ + io::print("]\n"); + }) +) + +fn main() { + print_hd_tl!(x, y, z, w) +} + diff --git a/src/test/run-pass/issue-4446.rs b/src/test/run-pass/issue-4446.rs new file mode 100644 index 00000000000..2f44f9783e1 --- /dev/null +++ b/src/test/run-pass/issue-4446.rs @@ -0,0 +1,21 @@ +// 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +use std::{pipes, io, task, comm}; + +fn main() { + let (port, chan) = comm::stream(); + + do task::spawn { + io::println(port.recv()); + } + + chan.send("hello, world"); +} diff --git a/src/test/run-pass/issue-5060.rs b/src/test/run-pass/issue-5060.rs new file mode 100644 index 00000000000..0922f555bea --- /dev/null +++ b/src/test/run-pass/issue-5060.rs @@ -0,0 +1,28 @@ +// 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +use std::io; + +macro_rules! print_hd_tl ( + ($field_hd:ident, $($field_tl:ident),+) => ({ + io::print(stringify!($field_hd)); + io::print("::["); + $( + io::print(stringify!($field_tl)); + io::print(", "); + )+ + io::print("]\n"); + }) +) + +fn main() { + print_hd_tl!(x, y, z, w) +} + diff --git a/src/test/run-pass/issue-5192.rs b/src/test/run-pass/issue-5192.rs new file mode 100644 index 00000000000..d5a1a779d45 --- /dev/null +++ b/src/test/run-pass/issue-5192.rs @@ -0,0 +1,44 @@ +// 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +pub trait EventLoop { +} + +pub struct UvEventLoop { + uvio: int +} + +impl UvEventLoop { + pub fn new() -> UvEventLoop { + UvEventLoop { + uvio: 0 + } + } +} + +impl EventLoop for UvEventLoop { +} + +pub struct Scheduler { + event_loop: ~EventLoop, +} + +impl Scheduler { + + pub fn new(event_loop: ~EventLoop) -> Scheduler { + Scheduler { + event_loop: event_loop, + } + } +} + +fn main() { + let mut sched = Scheduler::new(~UvEventLoop::new() as ~EventLoop); +} diff --git a/src/test/run-pass/issue-5280.rs b/src/test/run-pass/issue-5280.rs new file mode 100644 index 00000000000..72bf0cee05d --- /dev/null +++ b/src/test/run-pass/issue-5280.rs @@ -0,0 +1,27 @@ +// 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// xfail-test + +type FontTableTag = u32; + +trait FontTableTagConversions { + fn tag_to_str(self); +} + +impl FontTableTagConversions for FontTableTag { + fn tag_to_str(self) { + &self; + } +} + +fn main() { + 5.tag_to_str(); +}