6be0f7414d
Disable `vec_box` when using different allocators Fixes #7114 This PR disables the `vec_box` lint when the `Box` and `Vec` use different allocators (but not when they use the same - custom - allocator). For example - `Vec<Box<i32, DummyAllocator>>` will disable the lint, and `Vec<Box<i32, DummyAllocator>, DummyAllocator>` will not disable the lint. In addition, the applicability of this lint has been changed to `Unspecified` due to the automatic fixes potentially breaking code such as the following: ```rs fn foo() -> Vec<Box<i32>> { // -> Vec<i32> vec![Box::new(1)] } ``` It should be noted that the `if_chain->let-chains` fix has also been applied to this lint, so the diff does contain many changes. changelog: disable `vec_box` lint when using nonstandard allocators