Manish Goregaokar
9e166e09b8
Use new spans for expansion checking in loop lints
2019-10-01 10:17:29 -07:00
Lzu Tao
aa4f3fb537
Clean up some unused vars
2019-09-29 23:46:32 +07:00
Lzu Tao
6e3a0ea6b3
Rustup rust-lang/rust#63492
2019-09-29 22:58:17 +07:00
bors
fe920ebf8b
Auto merge of #4593 - james9909:fix-multiple-inherent-impls, r=llogiq
...
Fix false positive in `multiple_inherent_impl`
changelog: Fix false positive in `multiple_inherent_impl` by ignoring impls derived from macros.
Closes #4578 .
2019-09-29 06:21:55 +00:00
Matthias Krüger
5f6e3f35b5
rustup https://github.com/rust-lang/rust/pull/64781/
...
cc https://github.com/rust-lang/rust/issues/64867
2019-09-28 10:42:41 +02:00
James Wang
189eaa54c6
Ignore impls derived from macros
2019-09-27 20:47:00 -05:00
flip1995
8d8ba14371
Fix author lint
2019-09-27 18:01:04 +02:00
flip1995
4bbd10a585
Rustup to rust-lang/rust#64813
2019-09-27 17:21:20 +02:00
Michael Wright
8b9415cd88
Refactor booleans
...
Remove unused output from `suggest(..)`
2019-09-27 07:59:34 +02:00
Michael Sproul
4f9d6eea5c
Detect assignment ops in integer_arithmetic
2019-09-27 11:55:42 +10:00
Matthias Krüger
e59d619981
rustup https://github.com/rust-lang/rust/pull/64515
...
changelog: none
2019-09-26 18:34:43 +02:00
Lzu Tao
54371929d2
Remove unused import
2019-09-26 16:08:30 +07:00
Lzu Tao
a7b7e19f49
Rustup https://github.com/rust-lang/rust/pull/64513
2019-09-26 16:03:36 +07:00
bors
adc1df11b4
Auto merge of #4568 - mikerite:fix-4548, r=flip1995
...
Fix `nonminimal-bool` false positive
Closes #4548
Closes #3847
changelog: Fix `nonminimal-bool` false positive
2019-09-26 08:06:16 +00:00
bors
4d30b08027
Auto merge of #4569 - james9909:add-comparison-chain, r=oli-obk
...
Add a new lint for comparison chains
changelog: Adds a new lint: `comparison_chain`.
`comparison_chain` lints all `if` conditional chains where all the conditions are binary comparisons on the same two operands and will suggest a rewrite with `match`.
Closes #4531 .
2019-09-26 07:38:08 +00:00
Lzu Tao
08ce6bc6d9
Fix macro expansion in toplevel_ref_arg lint
2019-09-26 08:46:51 +07:00
Manish Goregaokar
49374a4380
Downgrade op_ref to a MaybeIncorrect suggestion
2019-09-25 14:53:48 -07:00
Manish Goregaokar
d28dacb33a
redundant_pattern_matching: make rustfixable
2019-09-25 14:45:18 -07:00
Manish Goregaokar
a83a8dccba
redundant_closure_call: split tests into fixable
2019-09-25 14:45:18 -07:00
Manish Goregaokar
ad0e7c8e7f
map_unit_fn: fix applicability
2019-09-25 14:45:18 -07:00
Manish Goregaokar
1090509564
non_copy_const: remove incorrect suggestion
2019-09-25 14:45:18 -07:00
Manish Goregaokar
980650eec2
needless_collect: fix suggestion, make test rustfixable
2019-09-25 14:45:18 -07:00
Manish Goregaokar
7f822e742d
needless_borrowed_ref: fix false positive, make rustfixable
2019-09-25 14:45:18 -07:00
Manish Goregaokar
4368771548
map_entry test: Fix semicolon, add run-rustfix
2019-09-25 14:45:18 -07:00
Manish Goregaokar
d445bf2e89
Remove suggestion for complex map_entry cases
2019-09-25 13:54:53 -07:00
Manish Goregaokar
b5cadd734e
ignore single-match for or patterns
2019-09-25 13:34:55 -07:00
Manish Goregaokar
982c51e769
arm.pats -> arm.pat
2019-09-25 12:52:16 -07:00
Michael Wright
89cdd26e71
Refactor booleans
...
Inline `snip (..)` function
2019-09-25 06:40:04 +02:00
James Wang
2f34576c18
Update refactor according to code review
2019-09-24 19:07:03 -05:00
James Wang
7e8afe2001
Fix example in docs
2019-09-24 17:05:43 -05:00
James Wang
52408f5b7d
Add a new lint for comparison chains
2019-09-24 16:55:05 -05:00
Michael Wright
0cc48ad9f9
Fix nonminimal-bool
false positive
...
Closes #4548
Closes #3847
2019-09-24 08:13:50 +02:00
Andre Bogus
2b7514154d
Fix let_and_return lint
2019-09-23 09:17:18 +02:00
Michael Wright
ca6d36ba22
Merge branch 'master' into unneeded_wildcard_pattern
2019-09-23 05:26:47 +02:00
Cyril Plisko
4c881d108a
clippy::cargo_common_metadata: check for license-file
...
When license property is missing in Cargo.toml check for license-file
as it may be used instead of the former. The check implemented here is
very naive as it only verifies that the field is present and is not
empty. More scrutiny can be applied by verifying the file is actually
present.
Fixes #4517
2019-09-22 10:49:36 +03:00
Michael Wright
d04bf15114
Merge branch 'master' into unneeded_wildcard_pattern
2019-09-22 08:59:23 +02:00
bors
f21cd81949
Auto merge of #4558 - Manishearth:suggestions, r=phansch
...
Make more tests rustfixable
changelog: Fix various lint suggestions
Progress towards https://github.com/rust-lang/rust-clippy/issues/3630
r? @phansch
2019-09-21 01:01:21 +00:00
Manish Goregaokar
bbfb9a49e3
for_loop: Split test into fixable/unfixable, make needless_range_loop use updated range syntax
2019-09-21 10:01:06 +09:00
Manish Goregaokar
fa969762a4
assign_ops: Remove MachineApplicable
2019-09-20 14:51:28 +09:00
Andre Bogus
8d884c8a1a
new lint: mem-replace-with-uninit
2019-09-20 00:25:57 +02:00
bors
cdaa93d695
Auto merge of #4544 - JoshMcguigan:issue-4542, r=flip1995
...
#4542 remove machine applicable suggestion
This helps #4542 (but does not completely resolve) by removing the machine applicable suggestion (which was incorrect) for that case.
I would have preferred to fix the machine applicable suggestion to handle format strings, but that's a bit beyond my current understanding of the clippy codebase. I'd be happy to give it a try given some guidance.
changelog: only produce machine applicable suggestions on `explicit_write` lint
2019-09-19 09:28:29 +00:00
bors
f08f171530
Auto merge of #4539 - jolson88:cast-lossless-pedantic, r=flip1995
...
Changes cast-lossless to a pedantic lint
As discussed in #4528 , this moves the cast-lossless lint from `all` to `pedantic`.
I couldn't tell from description alone if it should also be removed from the complexity category, so I left it as part of complexity for now. I didn't see any impact to the tests from this change, but I could be wrong (as this is my first PR).
fixes #4528
changelog: Moves cast-lossless from default to checking only as a `pedantic` lint.
2019-09-19 08:50:31 +00:00
Andre Bogus
70a7dab773
New lint: Require # Safety
section in pub unsafe fn docs
2019-09-19 09:19:55 +02:00
Michael Wright
16ce071bed
Work around qpath_res issue
2019-09-18 21:57:14 +02:00
Josh Mcguigan
24ec994001
remove machine applicable suggestion explicit_write format #4542
2019-09-18 01:59:58 -07:00
mikerite
fed1709f46
Add note about refactoring
...
Co-Authored-By: Philipp Krones <hello@philkrones.com>
2019-09-18 06:48:47 +02:00
Jason Olson
6f1f413717
Changes cast-lossless to a pedantic lint
...
Fixes #4528
2019-09-15 10:32:45 -07:00
Jason Olson
80822b430d
Convert to Place's new boxed slice projection
...
Fixes breaking change from rust-lang PR https://github.com/rust-lang/rust/pull/63420/
2019-09-13 18:49:11 -07:00
Michael Wright
99be5221bc
Apply review suggestions
...
Fix grammar errors and use `Pat::is_rest` instead of own function.
2019-09-13 08:31:24 +02:00
Michael Wright
00ca42fe5b
Fix lint warnings
2019-09-12 08:36:05 +02:00
Michael Wright
4a3bc6b592
Add unneeded-wildcard-pattern
lint
2019-09-12 08:25:05 +02:00
bors
6ca5b2053a
Auto merge of #4478 - tsurai:master, r=flip1995
...
Fix incorrect swap suggestion
Clippy suggests using swap on fields belonging to the same owner causing two mutable borrows of the owner.
Disclosure: This is my first time working with clippy and rusts HIR. I'm very grateful for assistance and suggestions to improve the PR.
fixes #981
changelog: Fix false positive in `manual_swap` lint
2019-09-11 09:48:25 +00:00
Matthias Krüger
b72982759c
run rustfmt
2019-09-11 08:26:57 +02:00
bors
12bb7d668d
Auto merge of #4532 - rust-lang:integer-const, r=oli-obk
...
New `is_integer_const` to check more const ints
This mostly affects loop checks and the modulo_one lint. Tests were also updated where applicable.
changelog: none
2019-09-10 19:40:45 +00:00
Andre Bogus
5823e9468d
New is_integer_const
to check more const ints
...
This mostly affects loop checks and the modulo_one lint. Tests
were also updated where applicable.
2019-09-10 17:46:39 +02:00
bors
c53d2b824e
Auto merge of #4525 - mikerite:use-self-constructor, r=phansch
...
Extend `use_self` to check constructor
Rust did not allow this before.
changelog: Extend `use_self` to check constructor
2019-09-10 07:32:11 +00:00
Lzu Tao
b4d7f04a1d
Remove feature gate bind-by-move
2019-09-10 09:23:25 +07:00
bors
4ee8bc84cd
Auto merge of #4527 - rust-lang:more-vec-diag-items, r=oli-obk
...
Changed more `Vec` paths to diagnostic_items
In #4519 , I missed a few instances of path matching for `Vec`, so here they are.
r? @oli-obk
changelog: none
2019-09-09 16:56:51 +00:00
bors
c733376a5f
Auto merge of #4522 - mikerite:fix-4514, r=phansch
...
Fix `or_fun_call` bad suggestion
Closes #4514
changelog: Fix `or_fun_call` bad suggestion
2019-09-09 15:38:59 +00:00
Andre Bogus
507c03a859
Changed more Vec paths to diagnostic_items
2019-09-09 17:22:41 +02:00
bors
8af4e09605
Auto merge of #4458 - flip1995:block_in_if_ext_macro, r=phansch
...
Allow block_in_if_{stmt,expr} in external macro
I found this by running `cargo fix --clippy` on quite a big codebase.
You could refactor this assert to
```rust
let block_expr = _;
assert!(block_expr);
```
but,
1. it doesn't increase the readability IMO
2. That isn't possible in a `debug_assert!`
I'm not sure though, if we should allow this for macros in general or just for external macros.
changelog: Allow `block_in_if_{stmt,expr}` in external macros
2019-09-09 14:55:33 +00:00
Lzu Tao
a5f4d3ce29
Fix regression in case of proc-macro attribute expansion
2019-09-09 16:14:32 +07:00
Michael Wright
31fbff2a36
Extend use_self
to check constructor
...
Rust did not allow this before.
2019-09-09 07:51:44 +02:00
Michael Wright
f88c224d82
Merge branch 'master' into fix-4514
2019-09-09 07:36:30 +02:00
Andre Bogus
e3c4ffd4aa
Use diagnostic item for
2019-09-09 05:43:39 +02:00
Matthew Jasper
5e7ff6b705
Update non_expressive_names for or patterns
2019-09-08 16:27:54 +01:00
Matthew Jasper
a2477f7759
Remove use of the HIR CFG
2019-09-08 16:27:54 +01:00
Michael Wright
9bdfd0683f
Fix or_fun_call
bad suggestion
...
Closes #4514
2019-09-08 11:03:45 +02:00
bors
f30bf69ec7
Auto merge of #4508 - rust-lang:reduced-symbolism, r=phansch
...
Simplify `utils::match_def_path`, removing a FIXME
changelog: none
This removes the `Vec<Symbol>` allocation. We still need to call `cx.get_def_path`, but this should already have been interned, and I don't see how we can keep ergonomics of that function without allocating a `Vec`.
r? @phansch
2019-09-06 15:10:06 +00:00
Mateusz Mikuła
5afa216e30
Rustup to rust-lang/rust#64111
2019-09-06 13:57:27 +02:00
bors
9672a0400c
Auto merge of #4500 - jeremystucki:refactoring, r=flip1995
...
Small refactoring
changelog: none
2019-09-06 08:41:56 +00:00
Andre Bogus
72058a6d0d
Simplify , removing a FIXME
2019-09-06 09:40:36 +02:00
bors
313b41fac5
Auto merge of #4489 - JohnTitor:fix-redundant-pattern-false-positive, r=flip1995
...
Fix `redundant_pattern` false positive
Fix #4428
changelog: Fix `redundant_pattern` false positive
2019-09-05 16:15:36 +00:00
Lzu Tao
c12b700e87
Rustup "Minimize uses of LocalInternedString
"
2019-09-05 07:16:57 +00:00
bors
e3ae76aeac
Auto merge of #4495 - JohnTitor:fix-map-entry-false-positive, r=phansch
...
Fix `map_entry` false positive
Fixes #4219
changelog: Fix `map_entry` false positive
2019-09-04 16:25:49 +00:00
Yuki Okushi
8be37fdb1d
Make it auto fixable lint
2019-09-05 00:50:22 +09:00
Yuki Okushi
e236740f28
Fix redundant_pattern
false positive
2019-09-05 00:36:48 +09:00
bors
98a25241cc
Auto merge of #4487 - JohnTitor:deref-addrof-external-macro, r=flip1995
...
Don't check across macro boundary in `deref_addrof`
Fixes #4289
changelog: Allow `deref_addrof` in macros
2019-09-04 15:01:06 +00:00
Jeremy Stucki
3fc1ec1ffd
Refactor option handling
2019-09-04 16:19:59 +02:00
bors
9d2772207e
Auto merge of #4418 - euclio:byte-lit-suggestion, r=flip1995
...
use a structured suggestion for char-lit-as-u8
changelog: use a structured suggestion for char-lit-as-u8
2019-09-04 13:33:47 +00:00
Andy Russell
4ea246b0b3
use a structured suggestion for char-lit-as-u8
2019-09-04 08:50:55 -04:00
bors
ffe57fad85
Auto merge of #4498 - sinkuu:checked_arithmetic_unwrap, r=flip1995
...
Add manual_saturating_arithmetic lint
changelog: add `manual_saturating_arithmetic` lint
Fixes #1557 . This lint detects manual saturating arithmetics like `x.checked_add(10u32).unwrap_or(u32::max_value())` and suggests replacing with `x.saturating_add(10u32)`.
2019-09-04 12:14:41 +00:00
Shotaro Yamada
c6fb9c8a2a
Hide variables in doc-test
2019-09-04 21:10:08 +09:00
Shotaro Yamada
45fde0f86f
Fix doctest and renaming src
2019-09-04 21:06:28 +09:00
bors
a2c4b2b8da
Auto merge of #4490 - mikerite:fix-4364, r=flip1995
...
Fix `too_many_lines` false positive
changelog: Fix `too_many_lines` false positive
2019-09-04 11:35:13 +00:00
Shotaro Yamada
4960f79476
Add manual_saturating_arithmetic lint
2019-09-04 18:38:25 +09:00
bors
8239b7616f
Auto merge of #4454 - BO41:search_is_some, r=flip1995
...
Dereference one less on search_is_some and make it auto-fixable
Fixes #4453
changelog: none
2019-09-04 07:53:44 +00:00
BO41
64cd9e4d60
Try to fix .fixed
2019-09-03 18:56:23 +02:00
bors
11da8c18a2
Auto merge of #4479 - rust-lang:uninit_assume_init, r=flip1995
...
lint against `MaybeUninit::uninit().assume_init()`
changelog: add `uninit_assumed_init` lint
This fixes #4272
2019-09-03 16:14:40 +00:00
Andre Bogus
b01f2d1126
lint against MaybeUninit::uninit().assume_init()
2019-09-03 17:37:38 +02:00
bors
aeadf1562c
Auto merge of #4486 - lzutao:fix-panic-unseparate-literals, r=flip1995
...
Fix index out of bound in case of empty snippet
cc #4480
changelog: none
2019-09-03 13:17:30 +00:00
Yuki Okushi
c94c5e9048
Fix map_entry
false positive
2019-09-03 20:31:02 +09:00
bors
2d7da04e17
Auto merge of #4493 - JohnTitor:fix-build-bytes, r=flip1995
...
Rustup to rust-lang/rust#63561
changelog: none
2019-09-03 10:44:47 +00:00
Yuki Okushi
7d30cb6e76
Remove Allocation::bytes
2019-09-03 18:29:08 +09:00
Michael Wright
232dd43fe9
Fix occurrences of too_many_lines
violations
2019-09-03 06:26:49 +02:00
Michael Wright
0ae1a69330
Fix too_many_lines
false positive
...
Fixes #4364
2019-09-03 06:25:54 +02:00
Yuki Okushi
9a5b996228
Allow deref_addrof in macros
2019-09-03 00:17:23 +09:00
Lzu Tao
17d445b66d
Fix index out of bound in case of empty snippet
2019-09-02 20:38:40 +07:00
bors
1f9993729b
Auto merge of #4482 - awoimbee:doc_explicit_counter_loop, r=flip1995
...
fix misleading doc for explicit_counter_loop lint
changelog: replace misleading examples for explicit_counter_loop & more concise `Why is it bad?` section
This fixes #4472
2019-09-02 12:46:13 +00:00
Arthur Woimée
223e23a5ce
fix misleading doc for explicit_counter_loop lint
2019-09-01 21:54:47 +02:00