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
Michael Wright
2fdfd60569
Fix needless_lifetimes
false positive
2019-09-01 08:11:40 +02:00
Cristian Kubis
8bc1ded805
Fix incorrect swap suggestion
...
Clippy suggests using swap on fields belonging to the same owner
causing two mutable borrows of the owner
Fixes #981
Signed-off-by: Cristian Kubis <cristian.kubis@tsunix.de>
2019-08-31 18:53:14 +02:00
Michael Wright
88750f9ad7
Fix extra_unused_lifetimes
false positive
...
Fixes #4291
2019-08-31 08:16:04 +02:00
bors
a3fcaee562
Auto merge of #4473 - phansch:fix_cast_lossless_fp, r=flip1995
...
Fix cast_lossless false positive in impl const fn
Fixes https://github.com/rust-lang/rust-clippy/issues/3656#issuecomment-526387382
changelog: Fix false positive in `cast_lossless`
2019-08-30 20:30:53 +00:00
flip1995
3c11406c1f
Rustup to rust-lang/rust#60966
2019-08-30 10:11:27 +02:00
bors
2bff3d87d5
Auto merge of #4446 - mikerite:fix-4437, r=phansch
...
Fix `match_as_ref` bad suggestion
Fixes #4437
changelog: Fix `match_as_ref` bad suggestion
2019-08-30 06:07:41 +00:00
Philipp Hansch
fb1ae1747f
Fix cast_lossless false positive in impl const fn
...
Fixes https://github.com/rust-lang/rust-clippy/issues/3656#issuecomment-526387382
2019-08-30 07:22:35 +02:00
bors
28a8a6a483
Auto merge of #4450 - phansch:fix_const_fn_fp, r=flip1995
...
Fix missing_const_for_fn false positive
We don't want to lint if the type of the method implements drop.
(constant functions cannot evaluate destructors)
changelog: Fix `missing_const_for_fn` false positive
Fixes #4449
2019-08-29 17:24:21 +00:00
flip1995
dac81d867b
Use the spans returned by utils::method_calls
2019-08-29 17:34:03 +02:00
flip1995
832c0830ec
Also return the method spans in utils::method_calls
2019-08-29 17:34:02 +02:00
BO41
945d4cf69f
Dereference one less on search_is_some and make it auto-fixable
2019-08-29 17:34:02 +02:00
bors
888b736560
Auto merge of #4408 - phansch:more_rustfix_tests, r=flip1995
...
More rustfix tests
<!--
Thank you for making Clippy better!
We're collecting our changelog from pull request descriptions.
If your PR only updates to the latest nightly, you can leave the
`changelog` entry as `none`. Otherwise, please write a short comment
explaining your change.
If your PR fixes an issue, you can add "fixes #issue_number" into this
PR description. This way the issue will be automatically closed when
your PR is merged.
If you added a new lint, here's a checklist for things that will be
checked during review or continuous integration.
- [ ] Followed [lint naming conventions][lint_naming]
- [ ] Added passing UI tests (including committed `.stderr` file)
- [ ] `cargo test` passes locally
- [ ] Executed `./util/dev update_lints`
- [ ] Added lint documentation
- [ ] Run `./util/dev fmt`
[lint_naming]: https://rust-lang.github.io/rfcs/0344-conventions-galore.html#lints
Note that you can skip the above if you are just opening a WIP PR in
order to get feedback.
Delete this line and everything above before opening your PR -->
cc #3630
This is probably easier reviewed per-commit.
changelog: none
2019-08-29 10:48:14 +00:00
Victor Polevoy
87ef86ef5a
Improve cognitive_complexity lint's warning.
...
Adds the value of complexity limit set for the lint
to the warning.
Fixes #4466
Signed-off-by: Victor Polevoy <fx@thefx.co>
2019-08-29 11:54:18 +02:00
Michael Wright
0c8332558b
Merge branch 'master' into fix-4437
2019-08-29 08:17:36 +02:00
Philipp Hansch
1b18597554
Fix missing_const_for_fn false positive
...
We don't want to lint if any of the input parameters implement drop.
(constant functions cannot evaluate destructors)
2019-08-29 08:07:41 +02:00
Philipp Hansch
eeeadf30bf
Make useless_attribute suggestion MaybeIncorrect
2019-08-28 21:17:12 +02:00
Philipp Krones
236666138f
Rollup merge of #4460 - JohnTitor:fix-inherent-to-string, r=flip1995
...
Fix `inherent_to_string` false positive
Fixes #4457
changelog: fixes `inherent_to_string` false positive
2019-08-28 13:00:52 +02:00
Yuki Okushi
2c282252a9
Replace Arg
with Param
2019-08-28 18:33:25 +09:00
Philipp Hansch
f41677902d
Update int_plus_one suggestion text
...
This is now in line with the recommendations from here:
https://doc.rust-lang.org/nightly/nightly-rustc/rustc_errors/struct.Diagnostic.html#method.span_suggestion
2019-08-28 07:29:30 +02:00
Philipp Hansch
31cf2f2f35
Change float_cmp Applicability to HasPlaceholders
...
The suggestion includes an 'errors' placeholder currently, so it's not
`MachineApplicable`
2019-08-28 07:23:23 +02:00
Yuki Okushi
1dca950ac4
Fix inherent_to_string
false positive
2019-08-28 06:46:26 +09:00
flip1995
d36c785344
Allow block_in_if_{stmt,expr} in external macro
2019-08-27 09:43:03 +02:00
bors
fea888f2ec
Auto merge of #4445 - phansch:fix_unused_unit_sugg, r=flip1995
...
Fix unused_unit false positive
changelog: Fix `unused_unit` false positive
For some reason the `expr` of `stmt.node` didn't contain the expansion information, but the `stmt.span` does.
Fixes #4076
2019-08-26 13:29:01 +00:00
bors
f760088820
Auto merge of #4430 - lzutao:defid_trait_alias, r=flip1995
...
Account for trait alias when looking for defid
I hit the crash on the `expect` call when running clippy on rustc libcore.
Hopefully this will fix it.
changelog: none
2019-08-26 12:46:00 +00:00
bors
ba6681300e
Auto merge of #4436 - BO41:written_as, r=phansch
...
Add some "could be written as" examples
fixes #4405
changelog: none
2019-08-26 11:11:57 +00:00
Lzu Tao
c1a4b26406
Cleaner code for unsep literals
2019-08-26 16:11:43 +07:00
Lzu Tao
dac2509bac
Account for trait alias when looking for defid
2019-08-25 20:36:11 +07:00
Philipp Hansch
818b2ccfc5
Rustup to https://github.com/rust-lang/rust/pull/63854
2019-08-25 08:06:32 +02:00
Michael Wright
23336adf84
Fix match_as_ref
bad suggestion
...
Fixes #4437
2019-08-25 07:10:45 +02:00
Philipp Hansch
957dedb11d
Fix unused_unit false positive
...
Fixes #4076
2019-08-24 22:09:02 +02:00
BO41
31a6ab47e1
Fix lint doc
2019-08-24 13:57:25 +02:00
bors
2bcb615594
Auto merge of #4443 - jeremystucki:methods-refactoring, r=phansch
...
Small refactoring of methods/mod.rs
changelog: none
2019-08-24 07:45:29 +00:00
Jeremy Stucki
2da8288433
Refactor some minor things
2019-08-23 22:52:04 +02:00
Jeremy Stucki
907aebcf8b
Use more if-chains
2019-08-23 22:51:44 +02:00
Jeremy Stucki
4130dfba2e
Refactor 'lint_or_fun_call'
2019-08-23 22:31:22 +02:00
Jeremy Stucki
419c87fb35
Refactor 'check_unwrap_or_default'
2019-08-23 14:36:00 +02:00
Jeremy Stucki
1436fea271
Refactor 'check_impl_item'
2019-08-23 14:20:55 +02:00
Lzu Tao
5b367ed4a3
Add missing field to LitKind::Str
2019-08-23 18:02:13 +07:00
Lzu Tao
f717a77ecc
Re-add false positive check
2019-08-23 09:16:50 +00:00
Lzu Tao
ce2d2920ef
Add raw string regression test for useless_format lint
2019-08-23 09:16:50 +00:00
Lzu Tao
09d302a786
Re-factor useless_format lint
2019-08-23 09:16:50 +00:00
Lzu Tao
4134e608c5
Update Unicode lint tests
2019-08-23 05:42:45 +00:00
BO41
eebb7cd839
Add examples to some complexity lints
2019-08-22 15:41:07 +02:00
BO41
3f56cb5d8b
Add example to a perf lint
2019-08-22 15:41:07 +02:00