Skip to content

Commit

Permalink
Auto merge of #8644 - yoav-lavi:squashed-master, r=flip1995
Browse files Browse the repository at this point in the history
update unnecessary_join documentation

changelog: none

Updates the description of `unnecessary_join` in accordance with #8579 (comment). I've also added a line regarding differences in assembly output, please let me know if it should also make it in.
  • Loading branch information
bors committed Apr 6, 2022
2 parents cf1e2e9 + 1ad6442 commit 30019d1
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions clippy_lints/src/methods/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2055,7 +2055,7 @@ declare_clippy_lint! {
/// Checks for use of `.collect::<Vec<String>>().join("")` on iterators.
///
/// ### Why is this bad?
/// `.collect::<String>()` is more concise and usually more performant
/// `.collect::<String>()` is more concise and might be more performant
///
/// ### Example
/// ```rust
Expand All @@ -2070,9 +2070,12 @@ declare_clippy_lint! {
/// println!("{}", output);
/// ```
/// ### Known problems
/// While `.collect::<String>()` is more performant in most cases, there are cases where
/// While `.collect::<String>()` is sometimes more performant, there are cases where
/// using `.collect::<String>()` over `.collect::<Vec<String>>().join("")`
/// will prevent loop unrolling and will result in a negative performance impact.
///
/// Additionlly, differences have been observed between aarch64 and x86_64 assembly output,
/// with aarch64 tending to producing faster assembly in more cases when using `.collect::<String>()`
#[clippy::version = "1.61.0"]
pub UNNECESSARY_JOIN,
pedantic,
Expand Down

0 comments on commit 30019d1

Please sign in to comment.