rust/tests/compile-fail/box_vec.rs

30 lines
585 B
Rust
Raw Normal View History

2015-01-10 00:26:58 -06:00
#![feature(plugin)]
2015-03-02 04:43:44 -06:00
#![plugin(clippy)]
2015-12-28 08:12:57 -06:00
2015-04-13 12:58:18 -05:00
#![deny(clippy)]
2015-12-28 08:12:57 -06:00
#![allow(boxed_local)]
2016-02-22 08:42:24 -06:00
#![allow(blacklisted_name)]
2014-11-19 02:57:34 -06:00
macro_rules! boxit {
($init:expr, $x:ty) => {
let _: Box<$x> = Box::new($init);
}
}
fn test_macro() {
boxit!(Vec::new(), Vec<u8>);
}
pub fn test(foo: Box<Vec<bool>>) { //~ ERROR you seem to be trying to use `Box<Vec<T>>`
2015-01-10 00:26:58 -06:00
println!("{:?}", foo.get(0))
2014-11-19 02:57:34 -06:00
}
2015-05-07 23:01:41 -05:00
pub fn test2(foo: Box<Fn(Vec<u32>)>) { // pass if #31 is fixed
foo(vec![1, 2, 3])
2015-05-07 23:01:41 -05:00
}
2014-11-19 02:57:34 -06:00
fn main(){
2015-01-10 00:26:58 -06:00
test(Box::new(Vec::new()));
2015-05-07 23:01:41 -05:00
test2(Box::new(|v| println!("{:?}", v)));
test_macro();
2015-05-07 23:01:41 -05:00
}