Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

False positive for_kv_map in a consuming loop #1279

Closed
Riateche opened this issue Oct 14, 2016 · 5 comments
Closed

False positive for_kv_map in a consuming loop #1279

Riateche opened this issue Oct 14, 2016 · 5 comments
Labels
C-bug Category: Clippy is not doing the correct thing

Comments

@Riateche
Copy link

Riateche commented Oct 14, 2016

fn main() {
  let c: std::collections::HashMap<i32, String> = Default::default();
  for (_, b) in c {
    println!("{:?}", b);
  }
}

The lint suggests to use values() but AFAIK there is no consuming alternative to values(). (And if it exists, the message should mention it.)

Similar issue: #709.

@mcarton mcarton added the C-bug Category: Clippy is not doing the correct thing label Oct 14, 2016
@oli-obk
Copy link
Contributor

oli-obk commented Oct 14, 2016

Imo this is correct for copy types.

@Riateche
Copy link
Author

Imo this is correct for copy types.

indeed it may be. I've changed value type to String in the example, just to make it more clear.

@mrcnski
Copy link
Contributor

mrcnski commented Jan 3, 2019

The example in the OP works now without triggering a clippy attack. Seems like this has been fixed.

@phansch
Copy link
Member

phansch commented Jan 3, 2019

If it is fixed, it would be nice to add this example to tests/ui/for_kv_map.rs as well.

@mrcnski
Copy link
Contributor

mrcnski commented Jan 3, 2019

I'll raise a PR when I have a spare moment.

bors added a commit that referenced this issue Jan 3, 2019
Add ui/for_kv_map test for false positive in #1279

Fixes #1279
@bors bors closed this as completed in #3622 Jan 3, 2019
flip1995 pushed a commit to flip1995/rust-clippy that referenced this issue May 5, 2020
Changes:
````
Revert "tests: used_underscore_binding_macro: disable random_state lint."
Revert "Auto merge of rust-lang#3603 - xfix:random-state-lint, r=phansch"
rustup rust-lang/rust#56837
rustup (don't know the exact PR unfortunately)
Add itertools to integration tests
tests: used_underscore_binding_macro: disable random_state lint.
Trigger `use_self` lint in local macros
Add run-rustfix where it already passes
rustup: rust-lang/rust#55517
Make clippy work with parallel rustc
Add ui/for_kv_map test for false positive in rust-lang#1279
Update to latest compiletest-rs release
add testcase for rust-lang#3462
deps: bump rustc_tools_util version from 0.1.0 to 0.1.1 just in case...
Use compiletest's aux-build header instead of include macro
rustc_tool_utils: fix failure to create proper non-repo version string when used in crates on crates.io, bump version
rustfmt
UI test cleanup: Extract ifs_same_cond tests
Extract IteratorFalsePositives into option_helpers.rs
UI test cleanup: Extract for_kv_map lint tests
UI test cleanup: Extract lint from methods.rs test
Fix test for rust-lang/rust#57250
Limit infinite_iter collect() check to known types
Some improvements to util documentation
Use hashset for name blacklist
Reformat random_state tests
Use node_id_to_type_opt instead of node_it_to_type in random_state
Check pattern equality while checking declaration equality
random_state lint
Move constant write checks to temporary_assignment lint
Use an FxHashSet for valid idents in documentation lint
Fix suggestion for unnecessary_ref lint
Update CONTRIBUTING.md for rustfix tests
Update .fixed files via update-references.sh
Run rustfix on first UI test
Use WIP branch for compiletest_rs
````
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: Clippy is not doing the correct thing
Projects
None yet
Development

No branches or pull requests

5 participants