error: called `.get().unwrap()` on a slice. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:27:17
   |
27 |         let _ = boxed_slice.get(1).unwrap();
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&boxed_slice[1]`
   |
   = note: `-D get-unwrap` implied by `-D warnings`

error: called `.get().unwrap()` on a slice. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:28:17
   |
28 |         let _ = some_slice.get(0).unwrap();
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&some_slice[0]`

error: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:29:17
   |
29 |         let _ = some_vec.get(0).unwrap();
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&some_vec[0]`

error: called `.get().unwrap()` on a VecDeque. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:30:17
   |
30 |         let _ = some_vecdeque.get(0).unwrap();
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&some_vecdeque[0]`

error: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:31:17
   |
31 |         let _ = some_hashmap.get(&1).unwrap();
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&some_hashmap[&1]`

error: called `.get().unwrap()` on a BTreeMap. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:32:17
   |
32 |         let _ = some_btreemap.get(&1).unwrap();
   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&some_btreemap[&1]`

error: called `.get_mut().unwrap()` on a slice. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:37:10
   |
37 |         *boxed_slice.get_mut(0).unwrap() = 1;
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&mut boxed_slice[0]`

error: called `.get_mut().unwrap()` on a slice. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:38:10
   |
38 |         *some_slice.get_mut(0).unwrap() = 1;
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&mut some_slice[0]`

error: called `.get_mut().unwrap()` on a Vec. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:39:10
   |
39 |         *some_vec.get_mut(0).unwrap() = 1;
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&mut some_vec[0]`

error: called `.get_mut().unwrap()` on a VecDeque. Using `[]` is more clear and more concise
  --> $DIR/get_unwrap.rs:40:10
   |
40 |         *some_vecdeque.get_mut(0).unwrap() = 1;
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&mut some_vecdeque[0]`

