]> git.lizzy.rs Git - rust.git/blob - tests/ui/borrowck/suggest-assign-rvalue.rs
Rollup merge of #106726 - cmorin6:fix-comment-typos, r=Nilstrieb
[rust.git] / tests / ui / borrowck / suggest-assign-rvalue.rs
1 #![allow(dead_code)]
2 #![feature(never_type)]
3
4 #[derive(Debug, Default)]
5 struct Demo {}
6
7 #[derive(Debug)]
8 struct DemoNoDef {}
9
10 fn apple(_: u32) {}
11
12 fn banana() {
13     let chaenomeles;
14     apple(chaenomeles);
15     //~^ ERROR used binding `chaenomeles` isn't initialized [E0381]
16 }
17
18 fn main() {
19     let my_bool: bool = bool::default();
20     println!("my_bool: {}", my_bool);
21
22     let my_float: f32;
23     println!("my_float: {}", my_float);
24     //~^ ERROR used binding `my_float` isn't initialized
25     let demo: Demo;
26     println!("demo: {:?}", demo);
27     //~^ ERROR used binding `demo` isn't initialized
28
29     let demo_no: DemoNoDef;
30     println!("demo_no: {:?}", demo_no);
31     //~^ ERROR used binding `demo_no` isn't initialized
32
33     let arr: [i32; 5];
34     println!("arr: {:?}", arr);
35     //~^ ERROR used binding `arr` isn't initialized
36     let foo: Vec<&str>;
37     println!("foo: {:?}", foo);
38     //~^ ERROR used binding `foo` isn't initialized
39
40     let my_string: String;
41     println!("my_string: {}", my_string);
42     //~^ ERROR used binding `my_string` isn't initialized
43
44     let my_int: &i32;
45     println!("my_int: {}", *my_int);
46     //~^ ERROR used binding `my_int` isn't initialized
47
48     let hello: &str;
49     println!("hello: {}", hello);
50     //~^ ERROR used binding `hello` isn't initialized
51
52     let never: !;
53     println!("never: {}", never);
54     //~^ ERROR used binding `never` isn't initialized [E0381]
55
56     banana();
57 }