]> git.lizzy.rs Git - rust.git/blob - src/test/run-pass/proc-bounds.rs
rand: Use fill() instead of read()
[rust.git] / src / test / run-pass / proc-bounds.rs
1 // Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
4 //
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
10
11 fn foo<T>() {}
12 fn bar<T>(_: T) {}
13
14 fn is_send<T: Send>() {}
15 fn is_freeze<T: Freeze>() {}
16 fn is_static<T: 'static>() {}
17
18 pub fn main() {
19     foo::<proc()>();
20     foo::<proc:()>();
21     foo::<proc:Send()>();
22     foo::<proc:Send + Freeze()>();
23     foo::<proc:'static + Send + Freeze()>();
24
25     is_send::<proc:Send()>();
26     is_freeze::<proc:Freeze()>();
27     is_static::<proc:'static()>();
28
29
30     let a = 3;
31     bar::<proc:()>(proc() {
32         let b = &a;
33         println!("{}", *b);
34     });
35 }