bors
7b3af4145b
Auto merge of #79328 - c410-f3r:hir-if, r=matthewjasper
...
Reintroduce hir::ExprKind::If
Basically copied and paste #59288/https://github.com/rust-lang/rust-clippy/pull/4080 with some modifications.
The vast majority of tests were fixed and now there are only a few remaining. Since I am still unable to figure out the missing pieces, any help with the following list is welcome.
- [ ] **Unnecessary `typeck` exception**: [Cheated on this one to make CI green.](https://github.com/rust-lang/rust/pull/79328/files#diff-3faee9ba23fc54a12b7c43364ba81f8c5660045c7e1d7989a02a0cee1c5b2051 )
- [x] **Incorrect span**: [Span should reference `then` and `else` separately.](https://github.com/rust-lang/rust/pull/79328/files#diff-cf2c46e82222ee4b1037a68fff8a1af3c4f1de7a6b3fd798aacbf3c0475abe3d )
- [x] **New note regarding `assert!`**: [Modified but not "wrong". Maybe can be a good thing?](https://github.com/rust-lang/rust/pull/79328/files#diff-9e0d7c89ed0224e2b62060c957177c27db43c30dfe3c2974cb6b5091cda9cfb5 )
- [x] **Inverted report location**: [Modified but not "wrong". Locations were inverted.](https://github.com/rust-lang/rust/pull/79328/files#diff-f637ce7c1f68d523a165aa9651765df05e36c4d7d279194b1a6b28b48a323691 )
- [x] **`src/test/ui/point-to-type-err-cause-on-impl-trait-return.rs` has weird errors**: [Not sure why this is happening.](https://github.com/rust-lang/rust/pull/79328/files#diff-c823c09660f5b112f95e97e8ff71f1797b6c7f37dbb3d16f8e98bbaea8072e95 )
- [x] **Missing diagnostic**: [???](https://github.com/rust-lang/rust/pull/79328/files#diff-6b8ab09360d725ba4513933827f9796b42ff9522b0690f80b76de067143af2fc )
2021-01-14 14:41:58 +00:00
Joshua Nelson
dfb41f4797
Separate out a hir::Impl
struct
...
This makes it possible to pass the `Impl` directly to functions, instead
of having to pass each of the many fields one at a time. It also
simplifies matches in many cases.
2021-01-12 20:32:33 -05:00
Cameron Steffen
7871ebaab9
Fix symbol string comparison dogfood
2021-01-08 14:50:00 -06:00
Caio
7d42172899
Reintroduce hir::ExprKind::If
2021-01-07 18:54:12 -03:00
flip1995
f03edfd7a1
Merge commit '4911ab124c481430672a3833b37075e6435ec34d' into clippyup
2020-12-20 17:19:49 +01:00
bors
9f9e9f7e52
Auto merge of #6316 - ThibsG:WrongSelfConventionTraitDef, r=ebroto
...
Lint also in trait def for `wrong_self_convention`
Extends `wrong_self_convention` to lint also in trait definition.
By the way, I think the `wrong_pub_self_convention` [example](dd826b4626/clippy_lints/src/methods/mod.rs (L197)
) is misleading.
On [playground](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=32615ab3f6009e7e42cc3754be0ca17f ), it fires `wrong_self_convention`, so the example (or the lint maybe?) needs to be reworked.
The difference with `wrong_self_convention` [example](dd826b4626/clippy_lints/src/methods/mod.rs (L172)
) is mainly the `pub` keyword on the method `as_str`, but the lint doesn't use the function visibility as condition to choose which lint to fire (in fact it uses the visibility of the impl item).
fixes : #6307
changelog: Lint `wrong_self_convention` lint in trait def also
2020-12-19 21:39:19 +00:00
bors
142f0f5eda
Auto merge of #6448 - mikerite:interning_defined_symbol, r=Manishearth
...
New internal lint: Interning defined symbol
New internal lint: interning_defined_symbol
changelog: none
2020-12-16 08:18:38 +00:00
bors
1df2e38219
Auto merge of #6443 - matthiaskrgr:clone_on_copy_type, r=ebroto
...
clone_on_copy: show the type in the lint message
changelog: clone_on_copy: show the type in the lint message
2020-12-13 16:47:33 +00:00
Michael Wright
a6aa0acbea
Fix dogfood errors
2020-12-13 06:32:41 +02:00
Matthias Krüger
b2cb6ffbe3
clone_on_copy: show the type in the lint message
...
changelog: clone_on_copy: show the type in the lint message
2020-12-12 01:23:28 +01:00
Matthias Krüger
0b145d688b
clone_double_ref: print reference type in lint message
...
changelog: clone_double_ref: print the type of the reference in lint message
2020-12-12 01:09:30 +01:00
suyash458
a7cfffef26
add MSRV to more lints specified in #6097
...
update tests
2020-12-11 11:00:03 +05:30
ThibsG
4af9382bec
Common function to lint wrong self convention from impl and trait def
2020-12-10 17:08:42 +01:00
ThibsG
a6bb9276f7
Lint wrong self convention in trait also
2020-12-10 17:08:42 +01:00
bors
50bca8af1d
Auto merge of #6330 - camsteffen:redundant-else, r=ebroto
...
Add Redundant else lint
changelog: Add redundant_else lint
It seemed appropriate for "pedantic".
Closes #112 \*blows off dust*
2020-12-08 00:51:51 +00:00
flip1995
8eca423ea1
Merge commit 'c1664c50b27a51f7a78c93ba65558e7c33eabee6' into clippyup
2020-12-06 15:01:03 +01:00
Philipp Krones
e2ecc4ad6e
Rollup merge of #6402 - camsteffen:collapsible-match, r=llogiq
...
Add Collapsible match lint
changelog: Add collapsible_match lint
Closes #1252
Closes #2521
This lint finds nested `match` or `if let` patterns that can be squashed together. It is designed to be very conservative to only find cases where merging the patterns would most likely reduce cognitive complexity.
Example:
```rust
match result {
Ok(opt) => match opt {
Some(x) => x,
_ => return,
}
_ => return,
}
```
to
```rust
match result {
Ok(Some(x)) => x,
_ => return,
}
```
These criteria must be met for the lint to fire:
* The inner match has exactly 2 branches.
* Both the outer and inner match have a "wild" branch like `_ => ..`. There is a special case for `None => ..` to also be considered "wild-like".
* The contents of the wild branches are identical.
* The binding which "links" the matches is never used elsewhere.
Thanks to the hir, `if let`'s are easily included with this lint since they are desugared into equivalent `match`'es.
I think this would fit into the style category, but I would also understand changing it to pedantic.
2020-12-03 10:21:33 +01:00
Cameron Steffen
70f6a2cae2
Eat redundant else dogfood
2020-11-29 17:55:42 -06:00
Cameron Steffen
fff5fa6581
Eat collapsible_match dogfood
2020-11-29 15:34:11 -06:00
Suyash458
cd087e5c5e
add rustc-semver to dependencies
...
switch Version/VersionReq usages to RustcVersion
2020-11-28 21:21:04 -08:00
Hirochika Matsumoto
2c26cb14db
Move contains_return
to utils/mod.rs
2020-11-29 02:18:05 +09:00
Hirochika Matsumoto
f7b2098e1c
Fix a false positive in unnecessary_wraps
2020-11-29 01:55:15 +09:00
flip1995
b2e2c0806e
Improve extract_msrv_attr! situation
2020-11-25 12:22:58 +01:00
Suyash458
aaa4325045
add support for minimum supported rust version.
...
add configuration option for minimum supported rust version
add msrv attribute to some lints listed in #6097
add tests
2020-11-25 12:22:47 +01:00
flip1995
d3d2018ead
Merge commit '3e7c6dec244539970b593824334876f8b6ed0b18' into clippyup
2020-11-23 13:51:04 +01:00
Carol (Nichols || Goulding)
034244f108
Small grammar, punctuation, and code style improvements to docs
2020-11-22 10:17:34 -05:00
bors
44d944586c
Auto merge of #6070 - matsujika:unnecessary_wrap, r=flip1995
...
Add new lint `unnecessary_wrap`
Fixes #5969
changelog: New lint [`unnecessary_wraps`]
2020-11-17 20:28:32 +00:00
bors
a8cafc6196
Auto merge of #6338 - flip1995:rustup, r=flip1995
...
Rustup
r? `@ghost`
changelog: none
2020-11-17 17:10:04 +00:00
Hirochika Matsumoto
df0d565e59
Move find_all_ret_expressions
into utils
2020-11-18 01:28:37 +09:00
Bastian Kauschke
3567ea546f
clippy: fold by value
2020-11-16 22:42:09 +01:00
rsulli55
56d252c53d
Update clippy_lints/src/methods/mod.rs
...
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-11-10 23:18:48 -07:00
Ryan Sullivant
fd303132a2
Cleaned up message and suggestion for lint_search_is_some
2020-11-10 23:18:48 -07:00
Ryan Sullivant
ee1b959054
Added period back to lint search_is_some
and ran
...
`update-all-references.sh`
2020-11-10 23:18:47 -07:00
rsulli55
fb74b4802e
Remove borrow
...
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-11-10 23:18:47 -07:00
rsulli55
e9612f3eca
Remove to_string
on msg
...
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-11-10 23:18:47 -07:00
Ryan Sullivant
a1cf2d334d
Added a lint as suggested in 6010 which recommends using contains()
...
instead of `find()` follows by `is_some()` on strings
Update clippy_lints/src/find_is_some_on_strs.rs
Co-authored-by: Takayuki Nakata <f.seasons017@gmail.com>
Update clippy_lints/src/methods/mod.rs
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-11-10 23:18:47 -07:00
Cameron Steffen
9cab08465b
Fix or_fun_call for index operator
2020-11-08 14:49:42 -06:00
Cameron Steffen
b0994064b0
Make KNOW_TYPES static
2020-11-08 14:34:06 -06:00
bors
c015622568
Auto merge of #6304 - matthiaskrgr:crash_6302, r=llogiq
...
FROM_ITER_INSTEAD_OF_COLLECT: avoid unwrapping unconditionally
Fixes #6302
changelog: fix unwrap of None when checking libcore with clippy
2020-11-07 18:10:35 +00:00
bors
4bbef42c48
Auto merge of #6272 - camsteffen:unnecesary-lazy-eval-type, r=llogiq
...
Fix unnecessary_lazy_eval suggestion applicability
changelog: Fix unnecessary_lazy_eval suggestion applicability when breaking type inference
Fixes #6240
2020-11-07 10:01:46 +00:00
Matthias Krüger
5253595b3b
FROM_ITER_INSTEAD_OF_COLLECT: avoid unwrapping unconditionally
...
Fixes #6302
2020-11-06 19:34:34 +01:00
flip1995
34244190d4
Merge commit 'b20d4c155d2fe3a8391f86dcf9a8c49e17188703' into clippyup
2020-11-05 14:29:48 +01:00
bors
c2cf40cdcd
Auto merge of #6284 - camsteffen:rustc-sym, r=flip1995
...
Use const sym where possible
I ran a regex search and replace to use const `sym` values where possible. This should give some performance boost by avoiding string interning at runtime.
Con: It is not as consistent as always using `sym!`.
I also changed an internal lint to suggest using `sym::{}`, making an assumption that this will always work for diagnostic items.
changelog: none
2020-11-04 09:22:54 +00:00
bors
a2bf404d34
Auto merge of #6101 - pitiK3U:from_iter_instead_of_collect, r=flip1995
...
Add lint: from_iter_instead_of_collect
Fixes #5679
This implements lint for `::from_iter()` from #5679 not the general issue (`std::ops::Add::add`, etc.).
This lint checks if expression is function call with `from_iter` name and if it's implementation of the `std::iter::FromIterator` trait.
changelog: Introduce from_iter_instead_of_collect lint
2020-11-03 15:59:16 +00:00
Piti the little Light
52d1ea3c9a
Fix: Don't show lint for types that doesn't implement Iterator
2020-11-03 16:44:24 +01:00
Piti the little Light
f359fb872b
Improve error message
2020-11-03 16:44:24 +01:00
Piti the little Light
abdb7aeb55
Remove backticks
2020-11-03 16:44:24 +01:00
Piti the little Light
854f2cef06
Run cargo dev fmt
2020-11-03 16:44:24 +01:00
Piti the little Light
8906040445
Improvements from PR feedback
2020-11-03 16:44:21 +01:00
Piti the little Light
8a5d78b71a
Fix from_iter_instead_of_collect
lint crashing on exprs without path segment
2020-11-03 16:42:30 +01:00
Piti the little Light
315bab0ea1
Add from_iter_instead_of_collect
lint implementation
2020-11-03 16:42:28 +01:00
Cameron Steffen
a6611de75a
Include bindings as machine applicable
2020-11-02 12:57:37 -06:00
Cameron Steffen
22cc77a232
Use const rustc sym where possible
2020-11-02 11:46:37 -06:00
Eduardo Broto
f8ac1f99ef
Address suggestions in PR review
2020-10-30 23:47:22 +01:00
Eduardo Broto
d958269fe5
Rename single_char_push_str to single_char_add_str
2020-10-30 23:29:44 +01:00
Matthias Krüger
c1eb8ceede
get_hint_if_single_char_arg: fix bug where multi-char letters are not detected properly
2020-10-30 23:29:44 +01:00
Matthias Krüger
c6412aeebc
handle macros returning Strings in single_char_push_str and single_char_insert_str
2020-10-30 23:29:38 +01:00
Matthias Krüger
2350ee75b2
single_char_push_str lint using insert_str() on single-char literals and suggest insert()
...
changelog: single_char_push_str: lint using string.insert_str() with single char literals and suggests string.insert() with a char
Fixes #6026
2020-10-30 23:28:17 +01:00
bors
7387b87bb9
Auto merge of #6197 - ThibsG:ImproveFilterNext, r=ebroto
...
Improve suggestions for several lints
This PR is a follow-up of this [Zulip discussion](https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/filter_next.20lint ).
It unifies placeholders for `methods` module and improves several suggestions for `filter_next`, `filter_map_next` and `map_unwrap_or` lints.
changelog: none
2020-10-30 21:58:09 +00:00
Cameron Steffen
c0d1002d93
Fix unnecessary_lazy_eval suggestion applicability
...
Fixes #6240
2020-10-30 16:10:01 -05:00
bors
c57d8ae515
Auto merge of #6227 - HMPerson1:collect_map, r=phansch
...
Add lint for replacing `.map().collect()` with `.try_for_each()`
Fixes #6208
changelog: Add `map_collect_result_unit`
2020-10-29 15:34:15 +00:00
Nathan Whitaker
a1bb10e9b8
Remove lint from clippy
2020-10-26 18:19:48 -04:00
ThibsG
3fec6f568d
Improve some suggestions for filter_map_next
, filter_next
and map_unwrap_or
lints
2020-10-26 11:02:07 +01:00
ThibsG
2911d9c7de
Use better placeholders for some methods lint messages
2020-10-26 11:02:07 +01:00
HMPerson1
f0cf3bdca1
Add lint for replacing .map().collect()
with .try_for_each()
2020-10-25 21:20:57 -04:00
flip1995
fbf2430f02
Merge commit '2f6439ae6a6803d030cceb3ee14c9150e91b328b' into clippyup
2020-10-09 12:45:29 +02:00
bors
14e72696a6
Auto merge of #6124 - pickfire:patch-1, r=flip1995
...
Use more concrete explanation for methods
*Please keep the line below*
changelog: none
2020-10-06 23:22:28 +00:00
flip1995
b05aeaa9bc
Run fmt
2020-10-06 23:32:38 +02:00
Ivan Tham
7021d70d2e
Use more concrete explanation for methods
...
Show some code rather than "a single method call".
2020-10-06 23:58:32 +08:00
Matthew Jasper
adb7fc6283
Fix tools
2020-10-06 11:19:30 +01:00
flip1995
d1f9cad102
Merge commit 'e636b88aa180e8cab9e28802aac90adbc984234d' into clippyup
2020-09-24 14:49:22 +02:00
rail
ce06472246
replace walk_ptrs_ty
with peel_refs
2020-09-17 10:11:59 +12:00
bors
06f1902878
Auto merge of #5937 - montrivo:option_if_let_else, r=flip1995
...
option_if_let_else - distinguish pure from impure else expressions
Addresses partially #5821 .
changelog: improve the lint `option_if_let_else`. Suggest `map_or` or `map_or_else` based on the else expression purity.
2020-09-16 19:36:49 +00:00
Tim Nielens
6ba36bcfd3
option_if_let_else - distinguish pure from impure else expressions
2020-09-16 01:30:50 +02:00
Eduardo Broto
332c2dcb4d
Fix dogfood after MatchTypeOnDiagItem
2020-09-15 10:29:53 +02:00
Matthias Krüger
2487f8f461
into_iter_on_ref: rephrase lint message: will not move the x -> will not consume the x
...
imo that's a bit clearer.
2020-09-11 16:52:25 +02:00
flip1995
a12828a80a
Merge commit '5034d47f721ff4c3a3ff2aca9ef2ef3e1d067f9f' into clippyup
2020-09-10 17:47:07 +02:00
Eduardo Broto
23646e6583
Merge remote-tracking branch 'upstream/master' into sync-from-rust
2020-09-04 23:27:01 +02:00
LeSeulArtichaut
28f9b84042
ty.kind
-> ty.kind()
in rustdoc and clippy
2020-09-04 18:27:33 +02:00
Camelid
17b2ba5ded
Syntax-highlight single_char_push_str
lint
2020-08-30 11:29:17 -07:00
flip1995
282c59820b
Merge commit '3d0b0e66afdfaa519d8855b338b35b4605775945' into clippyup
2020-08-28 18:43:25 +02:00
Thibaud
73b1ee1a61
Update clippy_lints/src/methods/mod.rs
...
Co-authored-by: Eduardo Broto <ebroto@tutanota.com>
2020-08-28 09:33:05 +02:00
ThibsG
504612622f
Merge logic of looking for Self
type
2020-08-27 18:31:31 +02:00
ThibsG
3cb75c2e5c
Remove expansion restriction + fix doc and tests naming
2020-08-27 18:25:38 +02:00
ThibsG
2a3ee5fa85
Fix FP in new_ret_no_self
: trigger in trait def instead of impl block
2020-08-27 18:25:38 +02:00
Thibaud
370fc45a0a
Update clippy_lints/src/methods/mod.rs
...
Co-authored-by: Eduardo Broto <ebroto@tutanota.com>
2020-08-25 22:20:35 +02:00
ThibsG
3d820f71fe
Fix incorrect suggestion when clone_on_ref_ptr
is triggered in macros
2020-08-24 14:05:49 +02:00
Michael Wright
11efd75aeb
Fix false negative in option_as_ref_deref
2020-08-21 07:23:04 +02:00
flip1995
c680602005
Merge remote-tracking branch 'upstream/master' into rustup
2020-08-18 19:50:23 +02:00
David Wood
f13d2bfd9b
clippy: support QPath::LangItem
...
This commit updates clippy with the introduction of `QPath::LangItem` so
that it still compiles.
Signed-off-by: David Wood <david@davidtw.co>
2020-08-17 13:55:05 +01:00
Dániel Buga
fc1e07e0c1
Rename lint to use plural form
2020-08-16 22:16:39 +02:00
Dániel Buga
b7ee8685ac
Fix dogfooding test errors
2020-08-16 21:04:02 +02:00
Dániel Buga
3b52d7f780
run cargo dev fmt
2020-08-16 20:51:16 +02:00
Dániel Buga
8a14c11536
Cleanup, explain return value
2020-08-16 20:50:30 +02:00
Dániel Buga
d71b418ac5
Moved to submodule, don't trigger if map_unwrap_or does
2020-08-16 20:47:50 +02:00
Dániel Buga
9c41822d34
Apply suggested change
...
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-08-16 20:27:54 +02:00
Dániel Buga
94cf90e5a5
Apply suggested change
...
Co-authored-by: Philipp Krones <hello@philkrones.com>
2020-08-16 20:27:54 +02:00
Dániel Buga
a7083eea1c
Removed the extra lifetime parameter
2020-08-16 20:27:54 +02:00
Dániel Buga
75637c1eda
Catch function calls in argument lists, add tests that tuples don't get linted
2020-08-16 20:27:54 +02:00
Dániel Buga
a7cc5d4068
Also simplify if the closure body is an index expression
2020-08-16 20:27:54 +02:00
Dániel Buga
848af39310
Add note to or_fun_call
, list checked methods
2020-08-16 20:27:54 +02:00
Dániel Buga
a3ea65c2d9
Implement new lint
2020-08-16 20:27:22 +02:00
bors
3bd98895f1
Auto merge of #5725 - montrivo:should-impl-trait, r=flip1995
...
should_impl_trait - ignore methods with lifetime params
Fixes : #5617
changelog: don't lint should_implement_trait when an `Iterator::next` case has explicit parameters
2020-08-16 17:51:18 +00:00
Christoph Walcher
b381ade179
elide lifetimes
2020-08-15 01:40:55 +02:00
Christoph Walcher
ae56e988a2
Merge lint with single_char_pattern
2020-08-15 01:40:55 +02:00
Erich Gubler
48a142559d
docs: typo in temporary_cstring_as_ptr
: s/point/&s
2020-08-13 13:52:21 -06:00
flip1995
027780ca2c
Merge commit '09bd400243ed6f7059fedc0c1623aae3792521d6' into clippyup
2020-08-11 17:50:45 +02:00
Matthias Krüger
6af297f80e
iter-next-slice: make lint adhere to lint message convention
2020-08-11 15:15:26 +02:00
Tim Nielens
f9ba829f67
should_impl_trait - self linting
2020-08-09 16:09:08 +02:00
Tim Nielens
166c520e9a
should_impl_trait - pr comments
2020-08-09 15:10:00 +02:00
Tim Nielens
7cc1a2ed87
should_implement_trait - filter on explicit lifetime param only
2020-08-09 15:10:00 +02:00
Tim Nielens
e6b2254f9e
should_implement_trait - pr remarks
2020-08-09 15:10:00 +02:00
Tim Nielens
2bc0ecd44b
should_implement_trait - add test cases for every checked trait method
2020-08-09 15:10:00 +02:00
Tim Nielens
a77e881ec9
should_impl_trait - ignore methods with lifetime params
2020-08-09 15:10:00 +02:00
bors
2ceb8c6c2d
Auto merge of #5865 - camsteffen:unnecessary-fold-known-probs, r=Manishearth
...
Remove obsolete known problems unnecessary_fold
The known problems looks to be obsolete since NLL is stable.
changelog: none
2020-08-04 23:09:35 +00:00
Cameron Steffen
0ccdf2913a
Remove obsolete known problems unnecessary_fold
2020-08-03 16:23:20 -05:00
Dmitry Murzin
d4ba561aaf
Review fixes
2020-07-31 00:28:21 +03:00
Dmitry Murzin
a427c99f3d
Handle mapping to Option in map_flatten
lint
2020-07-30 23:23:33 +03:00
bors
2e0f8b6cc6
Auto merge of #5843 - dima74:iter_skip_next.add-suggestion, r=phansch
...
Add suggestion for `iter_skip_next` lint
changelog: Add suggestion for [`iter_skip_next`](https://rust-lang.github.io/rust-clippy/master/index.html#iter_skip_next ) lint
2020-07-29 06:10:55 +00:00
Bastian Kauschke
6ce37fab95
introduce PredicateAtom
2020-07-27 21:07:37 +02:00
Bastian Kauschke
88787083f4
this might be unqualified, but at least it's now quantified
2020-07-27 21:06:36 +02:00
Bastian Kauschke
dfa1af2059
clippy
2020-07-27 21:06:36 +02:00
flip1995
d164ab65f7
Merge commit 'da5a6fb1b65ec6581a67e942a3850f6bc15a552c' into clippyup
2020-07-26 21:07:07 +02:00
Dmitry Murzin
b375f1dd20
Add suggestion for iter_skip_next
lint
2020-07-25 17:11:55 +03:00
flip1995
0f501ac1db
Merge remote-tracking branch 'upstream/master' into rustup
2020-07-18 15:09:58 +02:00
Valentin Lazureanu
5a20489c5c
Rename TypeckTables to TypeckResults.
2020-07-17 08:47:04 +00:00
Brian Warner
e83b3eb993
formatting nits
2020-07-14 09:20:19 -07:00
flip1995
6f25adbd5a
Merge commit '2ca58e7dda4a9eb142599638c59dc04d15961175' into clippyup
2020-07-14 14:59:59 +02:00
Brian Warner
201999ccfd
improve advice in iter_nth_zero
...
The "use .next()" replacement advice is on the last line of the code snippet,
where it is vulnerable to truncation. Display that advice at the beginning
instead.
closes #5783
2020-07-13 10:59:45 -07:00
robojumper
1740dda763
fix match_like_matches_macro in clippy
2020-07-06 18:35:58 +02:00
JarredAllen
6ce981225b
Clean existing lint code to match new lint
2020-07-03 16:51:44 -07:00
JarredAllen
5150277a4f
Used clippy to clean itself
2020-07-03 16:50:45 -07:00
flip1995
a7c58e66d4
Merge remote-tracking branch 'upstream/master' into rustup
2020-07-03 12:50:41 +02:00
Eduard-Mihai Burtescu
30c046ede4
Use 'tcx for references to AccessLevels wherever possible.
2020-07-03 00:04:48 +03:00
Eduard-Mihai Burtescu
590e07bbc2
rustc_lint: avoid using TypeckTables::empty for LateContext.
2020-07-02 16:51:04 +03:00
flip1995
1e861a2663
Merge remote-tracking branch 'upstream/master' into rustup2
2020-06-30 15:40:22 +02:00
Eduard-Mihai Burtescu
f5ce0e5fe9
rustc_lint: only query typeck_tables_of
when a lint needs it.
2020-06-26 02:56:23 +03:00
bors
a14eab389f
Auto merge of #5745 - montrivo:copy_on_clone, r=phansch
...
clone_on_copy - add machine applicability
Fix #4826 .
Change the applicability of the lint clone_on_copy. Split a test file and run rustfix on the clone_on_copy part.
changelog: clone_on_copy - add machine applicability
2020-06-24 07:11:07 +00:00
Tim Nielens
6bf5434e19
copy_on_clone - add machine applicability
2020-06-24 01:01:44 +02:00
Aaron Hill
6b3ee8f600
Update Clippy for MethodCall changes
2020-06-10 17:30:11 -04:00
Lzu Tao
8db24840f7
Merge commit 'ff0993c5e9162ddaea78e83d0f0161e68bd4ea73' into clippy
2020-06-09 14:36:01 +00:00
Mazdak Farrokhzad
78f158e80e
dogfood unnested_or_patterns
2020-06-07 21:16:03 +02:00
Philipp Hansch
623faac84e
Cleanup: Use rustc's same_types
instead of our same_tys
2020-06-06 11:50:59 +02:00
bors
5cb9ef390a
Auto merge of #5664 - ThibsG:GiveCorrectedCode, r=flip1995
...
Give corrected code
This PR adds corrected code for doc examples.
I did this in several commits to facilitate review.
Don't hesitate to tell me if I forgot some.
Also, sometimes I felt it was not necessary to give corrected code, but I maybe wrong.
fixes : #4829
changelog: Improve documentation examples across multiple lints.
2020-06-02 12:11:28 +00:00
bors
f760d77bdb
Auto merge of #5597 - esamudera:slice_iter_next, r=flip1995
...
New lint: iter_next_slice
Hello, this is a work-in-progress PR for issue: https://github.com/rust-lang/rust-clippy/issues/5572
I have implemented lint to replace `iter().next()` for `slice[index..]` and `array` with `get(index)` and `get(0)` respectively. However since I made a lot of changes, I would like to request some feedback before continuing so that I could fix mistakes.
Thank you!
---
changelog: implement `iter_next_slice` lint and test, and modify `needless_continues`, `for_loop_over_options_result` UI tests since they have `iter().next()`
2020-06-02 11:42:22 +00:00
ThibsG
137a3b4d32
Corrected doc PR fixes
2020-06-01 10:49:48 +02:00
ThibsG
9893254dff
Add more corrected code for doc
2020-06-01 10:39:52 +02:00
Ericko Samudera
32fde0b511
New lint: iter_next_slice
2020-06-01 03:08:51 +07:00
flip1995
a0e9f9bd0d
Merge commit '7ea7cd165ad6705603852771bf82cc2fd6560db5' into clippyup2
2020-05-28 15:45:24 +02:00
Jeremy Stucki
bcfeb4de15
Fix build
2020-05-25 21:41:20 +02:00
Jeremy Stucki
566377f627
Ignore calls to 'len'
2020-05-25 21:41:20 +02:00
flip1995
6b3cf63bf5
Fix dogfood fallout
2020-05-22 14:45:51 +02:00
Bastian Kauschke
091239ee60
introduce newtype'd Predicate<'tcx>
2020-05-20 15:44:34 +02:00
Bastian Kauschke
2722522fac
rename Predicate
to PredicateKind
, introduce alias
2020-05-20 15:38:03 +02:00
flip1995
f1d3086492
Merge commit 'e214ea82ad0a751563acf67e1cd9279cf302db3a' into clippyup
2020-05-17 17:36:26 +02:00
CrazyRoka
20c069beec
Fixed incorrect suggestion of clone_double_ref
lint
...
- Added `<_>` to suggestion
- Changed help message
2020-04-29 22:40:57 +03:00
Philipp Hansch
0a49935270
cargo dev fmt
2020-04-26 13:44:08 +02:00
Philipp Hansch
0480ff861a
More diagnostic items
...
In particular for:
* `VecDeque`
* `String`
* `Mutex`
* `HashMap`
* `HashSet`
cc https://github.com/rust-lang/rust/pull/71414 https://github.com/rust-lang/rust-clippy/issues/5393
2020-04-26 13:44:08 +02:00
xiongmao86
d7f1a1ed2b
Change note_span argument for span_lint_and_note.
2020-04-18 18:29:36 +08:00
xiongmao86
cf4e35339b
Add an Option<Span> argument to span_lint_and_help.
2020-04-18 18:28:29 +08:00
Philipp Hansch
870ae36f85
Cleanup: Rename 'db' variable to 'diag'
2020-04-17 08:08:00 +02:00
Marcin Serwin
c20afbdfe0
Lint map_flatten if caller is an Option
2020-04-16 08:00:32 +02:00
bors
81b3e7096b
Auto merge of #5449 - phansch:diagnostic-items, r=matthiaskrgr
...
Make use of more diagnostic items
This makes use of some (not all) already existing diagnostic items. Specifically:
* 79982a2
: `core::mem::uninitialized`, `core::mem::zeroed`, `alloc::sync::Arc`, `alloc::sync::Rc`
* 83874d0
: `Option` and `Result`
cc #5393
changelog: none
2020-04-14 19:58:17 +00:00
bors
d236b30a1d
Auto merge of #5457 - phansch:sym, r=matthiaskrgr
...
Cleanup: Use our `sym!` macro more
It's much shorter than Symbol::intern and the effect should still be clear
---
changelog: none
2020-04-14 12:30:14 +00:00
bors
54344c78f4
Auto merge of #5448 - Emerentius:update_new_ret_no_self_docs, r=phansch
...
Update documentation for new_ret_no_self
changelog: Update documentation for lint new_ret_no_self to reflect that the return type must only contain `Self`, not be `Self`
The lint was changed to be more lenient than the documentation implies in PR #3338 (Related issue #3313 )
2020-04-13 20:32:44 +00:00
Philipp Hansch
31c5664f25
Cleanup: Use our sym!
macro more
...
It's much shorter that Symbol::intern and the result should still be
clear.
2020-04-13 08:57:34 +02:00
Philipp Hansch
a524be6df5
cargo dev fmt
2020-04-12 15:23:54 +02:00
Philipp Hansch
83874d0ee7
Make use of Option/Result diagnostic items
2020-04-12 15:23:07 +02:00
Philipp Hansch
79982a2813
Make use of some existing diagnostic items
2020-04-12 13:58:04 +02:00
bors
5e8c0c5ae0
Auto merge of #5441 - rabisg0:fix/clone-on-copy, r=phansch
...
Check for clone-on-copy in argument positions
Earlier if arguments to method calls matched the above pattern they were
not reported. This patch ensures such arguments are checked as well.
Fixes #5436
changelog: apply clone_on_copy lint to func args as well
2020-04-10 21:49:26 +00:00
Emerentius
ed72dc4119
Update documentation for new_ret_no_self
...
The lint was changed to be more lenient than the documentation implies in PR #3338 .
Related issue #3313
2020-04-10 19:08:31 +02:00
Philipp Hansch
3ef1dab211
Rustup to https://github.com/rust-lang/rust/pull/70913
2020-04-10 19:03:34 +02:00
Philipp Krones
90fb50fabf
Revert "Downgrade new_ret_no_self to pedantic"
2020-04-09 19:38:20 +02:00
Rabi Guha
183c4abb22
Check for clone-on-copy in argument positions
...
Earlier if arguments to method calls matched the above pattern they were
not reported. This patch ensures such arguments are checked as well.
Fixes #5436
2020-04-09 21:59:42 +05:30
bors
940bbd6aa4
Auto merge of #5437 - rabisg0:should-impl-trait, r=flip1995
...
Check fn header along with decl when suggesting to implement trait
When checking for functions that are potential candidates for trait
implementations check the function header to make sure modifiers like
asyncness, constness and safety match before triggering the lint.
Fixes #5413 , #4290
changelog: check fn header along with decl for should_implement_trait
2020-04-08 16:55:47 +00:00
Rabi Guha
c2e5534157
Check fn header along with decl when suggesting to implement trait
...
When checking for functions that are potential candidates for trait
implementations check the function header to make sure modifiers like
asyncness, constness and safety match before triggering the lint.
Fixes #5413 , #4290
2020-04-08 21:24:20 +05:30
David Tolnay
899a1b5598
Move cognitive_complexity to nursery
2020-04-08 08:37:20 -07:00
Philipp Krones
79d152190c
Rollup merge of #5425 - xiongmao86:issue5367, r=flip1995
...
Ehance opt_as_ref_deref lint.
- [x] Added passing UI tests (including committed `.stderr` file)
- [x] `cargo test` passes locally
- [x] Run `cargo dev fmt`
Lint on opt.as_ref().map(|x| &**x). Fixes #5367 .
changelog: lint on opt.as_ref().map(|x| &**x)
2020-04-08 15:50:28 +02:00
Philipp Krones
7cb5180dfb
Rollup merge of #5420 - dtolnay:newret, r=flip1995
...
Downgrade new_ret_no_self to pedantic
As motivated by #5418 . This is the second most widely suppressed Clippy style lint, and [this grep.app search](https://grep.app/search?q=%5C%5Ballow%5C%28.%2Aclippy%3A%3Anew_ret_no_self%5Cb®exp=true&case=true&filter[lang][0]=Rust ) shows a large number of diverse reasonable signatures for a `new` method.
changelog: Remove new_ret_no_self from default set of enabled lints
2020-04-08 15:50:24 +02:00
Philipp Krones
a1e49f962c
Rollup merge of #5415 - nickrtorres:master, r=flip1995
...
Add new lint for `Result<T, E>.map_or(None, Some(T))`
Fixes #5414
PR Checklist
---
- [x] Followed lint naming conventions (the name is a bit awkward, but it seems to conform)
- [x] Added passing UI tests (including committed .stderr file)
- [x] cargo test passes locally
- [x] Executed cargo dev update_lints
- [x] Added lint documentation
- [x] Run cargo dev fmt
`Result<T, E>` has an [`ok()`](https://doc.rust-lang.org/std/result/enum.Result.html#method.ok ) method that adapts a `Result<T,E>` into an `Option<T>`.
It's possible to get around this adapter by writing `Result<T,E>.map_or(None, Some)`.
This lint is implemented as a new variant of the existing [`option_map_none` lint](https://github.com/rust-lang/rust-clippy/pull/2128 )
2020-04-08 15:50:20 +02:00
Philipp Krones
5ea4771433
Rollup merge of #5412 - dtolnay:tostring, r=flip1995
...
Downgrade inefficient_to_string to pedantic
From the [documentation](https://rust-lang.github.io/rust-clippy/master/index.html#inefficient_to_string ):
> ```diff
> - ["foo", "bar"].iter().map(|s| s.to_string());
>
> + ["foo", "bar"].iter().map(|&s| s.to_string());
> ```
I feel like saving 10 nanoseconds from the formatting machinery isn't worth asking the programmer to insert extra `&` / `*` noise in the *vast* majority of cases. This is a pedantic lint.
changelog: Remove inefficient_to_string from default set of enabled lints
2020-04-08 15:50:19 +02:00
Linus Färnstrand
1647f53fb3
Use int assoc consts in MANUAL_SATURATING_ARITHMETIC
2020-04-08 00:43:27 +02:00
Eduard Burtescu
2ad4d6a057
rustup: update for the new Ty::walk interface.
2020-04-07 19:53:56 +00:00
xiongmao86
d7056f8ffb
Refine lint message.
2020-04-07 21:25:07 +08:00
xiongmao86
4f14826e09
Lint on opt.as_ref().map(|x| &**x).
2020-04-06 22:53:59 +08:00
Nick Torres
5d54fbb791
result_map_or_into_option: fix syntax error in example
2020-04-04 17:20:23 -07:00
Nick Torres
325d0b69d2
result_map_or_into: fix dogfood_clippy error => {h,l}int
2020-04-04 15:02:38 -07:00
Nick Torres
2533f56a0e
result_map_or_into_option: fix cargo dev fmt --check
errors
2020-04-04 14:33:43 -07:00
Nick Torres
acc3bc1ba2
result_map_or_into_option: move arg checks into tuple assignment
2020-04-04 14:24:22 -07:00
Nick Torres
d0738bd673
result_map_or_into_option: destructure lint tuple or return early
2020-04-04 14:16:23 -07:00
Nick Torres
3a29aedf8d
result_map_or_into_option: add good and bad examples
2020-04-04 14:16:18 -07:00
Nick Torres
91759a7582
result_map_or_into_option: explicitly note absence of known problems
2020-04-04 14:16:11 -07:00
David Tolnay
560c8c9c70
Downgrade new_ret_no_self to pedantic
2020-04-04 12:58:18 -07:00
Nick Torres
91d8a804d3
result_map_or_into_option: add lint to catch manually adpating Result -> Option
...
Result<T, E> has an `ok()` method that adapts a Result<T,E> into an Option<T>.
It's possible to get around this adapter by writing Result<T,E>.map_or(None, Some).
This lint is implemented as a new variant of the existing
[`option_map_none` lint](https://github.com/rust-lang/rust-clippy/pull/2128 )
2020-04-04 03:17:13 -07:00
David Tolnay
e26ae7a0ff
Downgrade inefficient_to_string to pedantic
2020-04-02 20:00:12 -07:00
Matthias Krüger
aff57e0f43
rustup https://github.com/rust-lang/rust/pull/70536
2020-03-30 11:17:58 +02:00
Philipp Hansch
cec1e8f74e
Remove dependency on matches
crate
...
The std equivalent works exactly the same.
2020-03-25 07:50:08 +01:00
Matthias Krüger
a97f60b8e3
rustup https://github.com/rust-lang/rust/pull/69738
2020-03-16 18:38:30 +01:00
bors
24f6d643fe
Auto merge of #5322 - phansch:or_patterns, r=matthiaskrgr
...
Make use of `or_patterns` feature
changelog: none
2020-03-16 12:41:04 +00:00
Matthias Krüger
ba0884bee3
rustup https://github.com/rust-lang/rust/pull/68944
2020-03-16 11:36:17 +01:00
Philipp Hansch
548c417ec4
Make use of or_patterns
feature
2020-03-16 07:25:09 +01:00
Yuki Okushi
3e3776666e
Rustup to rust-lang/rust#69674
2020-03-13 04:56:55 +09:00
Yuki Okushi
3d44ad2e32
Use try_eval_usize
over eval_usize
2020-03-03 21:40:24 +09:00
Yuki Okushi
4253aa7137
Rustup to rust-lang/rust#69592
2020-03-01 12:23:33 +09:00
flip1995
8472ecda0f
Fix fallout
2020-02-21 11:14:18 +01:00
Yuki Okushi
f56e8b7eb4
Rename FunctionRetTy
to FnRetTy
2020-02-17 19:07:08 +09:00
Matthew Jasper
787398aa53
Avoid using regions from TypeckTables
...
These regions will all be `ReErased` soon.
2020-02-15 16:24:49 +00:00
Lily Chung
385fd7cd0a
change in the right place, run update_lints
2020-02-12 17:03:49 -08:00
Areredify
66ad544175
improve 'iter_nth_zero' documentation
2020-02-03 15:44:55 +03:00
Ludwig Stecher
1f600f3f9a
Un-ignore most code blocks to render correctly on website, correct mistakes
2020-01-30 23:44:37 +01:00
Ludwig Stecher
58da5ba6db
Fix code formatting for more lints
2020-01-30 22:12:00 +01:00
Ludwig Stecher
f0dc98160b
Fix syntax highlighting of code fence
...
The documentation for RESULT_EXPECT_USED includes this code:
let res: Result<usize, ()> = Ok(1);
res?;
# Ok::<(), ()>(())
Because the code fence didn't start with `rust`, the code wasn't highlighted and the line starting with `#` was displayed on the website. This is now fixed.
2020-01-30 21:55:30 +01:00
xiongmao86
ac9f019fbf
Reformat code.
2020-01-30 00:23:47 +08:00
Yuki Okushi
f5e86d6894
Rename span_note_and_lint
to span_lint_and_note
2020-01-27 11:26:42 +09:00
Yuki Okushi
f60f12f71f
Rename span_help_and_lint
to span_lint_and_help
2020-01-27 11:17:58 +09:00
Yuki Okushi
4b133f2867
Apply review comments
2020-01-26 07:01:16 +09:00
Yuki Okushi
2dc73c45d5
Clean up methods/mod.rs
2020-01-24 17:04:37 +09:00
Areredify
796958c7e2
add option_as_ref_deref
lint
2020-01-23 16:12:16 +03:00
bors
eca0d8e5d0
Auto merge of #5067 - JohnTitor:lint-skip-while-next, r=flip1995
...
Add `skip_while_next` lint
Fixes #4036
changelog: Add `skip_while_next` lint
2020-01-20 17:28:38 +00:00
Yuki Okushi
bec5b69e45
Apply review comment
2020-01-20 21:07:31 +09:00
Yuki Okushi
f8034e0bc6
Improve suspicious_map
documentation
2020-01-20 15:05:40 +09:00
Yuki Okushi
95c369fa91
Add skip_while_next
lint
2020-01-20 10:56:02 +09:00
Yuki Okushi
e72f0e61c6
Rustup to rust-lang/rust#68204
2020-01-18 14:39:18 +09:00
bors
c24a42289b
Auto merge of #4543 - xiongmao86:issue4503, r=flip1995
...
Fix issue4503
Fixes #4503 .
changelog: Add a lint checking user are using FileType.is_file() method and suggest using !FileType.is_dir().
- [x] Followed [lint naming conventions][lint_naming]
- [x] Added passing UI tests (including committed `.stderr` file)
- [x] `cargo test` passes locally
- [x] Executed `./util/dev update_lints`
- [x] Added lint documentation
- [x] Run `./util/dev fmt`
2020-01-13 22:09:39 +00:00
Yuki Okushi
ce1c6b285d
Rustup to rust-lang/rust#68045
2020-01-13 21:55:57 +09:00
xiongmao86
2b477f361e
Update lints again.
2020-01-12 19:54:17 +08:00
xiongmao86
77c48ca341
Fix grammar error.
2020-01-12 19:54:17 +08:00
Rui
1018b78f41
Update clippy_lints/src/methods/mod.rs
...
Co-Authored-By: Philipp Krones <hello@philkrones.com>
2020-01-12 19:54:17 +08:00
xiongmao86
8d3cc6b8a9
Change lint message.
2020-01-12 19:54:17 +08:00
Rui
a73822d3b9
Fix documents and messages.
...
Update clippy_lints/src/methods/mod.rs
2020-01-12 19:54:17 +08:00
xiongmao86
8d333a3cbb
Extend spans to include !.
2020-01-12 19:54:17 +08:00
xiongmao86
3c59eaf91c
Add lint logic.
2020-01-12 19:54:17 +08:00
xiongmao86
96334d0d7c
Declare lint.
2020-01-12 19:54:17 +08:00
Yuki Okushi
39947992b5
Rustup to rust-lang/rust#67806
2020-01-11 21:50:00 +09:00
Yuki Okushi
e58cfac458
Rustup to rust-lang/rust#67979
2020-01-09 16:43:51 +09:00
Yuki Okushi
5ac08b0cc9
Normalize lint messages
2020-01-07 18:26:55 +09:00
Yuki Okushi
2f2eaf8b7e
Rustup to rust-lang/rust#67886
2020-01-07 01:46:33 +09:00
Brad Sherman
ab5ff0352e
Add lint for iter.nth(0)
...
- Encourage iter.next() rather than iter.nth(0), which is less readable
2020-01-04 11:20:11 -06:00
Philipp Hansch
c5178e82b4
Rustup to https://github.com/rust-lang/rust/pull/67853
...
Specifically caused by https://github.com/rust-lang/rust/pull/67786
2020-01-04 11:30:03 +01:00
Yuki Okushi
1102b87e3a
Remove use of try!
from documentation
2020-01-04 13:47:01 +09:00
Yuki Okushi
9086b17e14
Rustup to rust-lang/rust#67707
2019-12-31 09:17:56 +09:00
bors
cecaca3382
Auto merge of #4634 - m-ober:feature/2320-map-or, r=llogiq
...
Add real suggestion to option_map_unwrap_or
changelog: Add real suggestion to `option_map_unwrap_or`
Fixes #2320
2019-12-30 15:50:06 +00:00
Yuki Okushi
a4c201e6b4
Rustup to rust-lang/rust#66942
2019-12-30 13:02:10 +09:00
Micha Ober
c5046fdce5
Add real suggestion to option_map_unwrap_or
2019-12-28 23:24:45 +01:00
Yuki Okushi
e2636729ec
Rustup to rust-lang/rust#66936
2019-12-27 16:13:53 +09:00
flip1995
9632e27487
Add <'_> where necessary
2019-12-22 15:42:41 +01:00
Lzu Tao
d1ca5f1d7c
rustup "Merge ast::Mutability
and mir::Mutability
"
2019-12-21 18:38:45 +00:00
bors
b4ad56e5c4
Auto merge of #4920 - lily-commure:fix-unnecessary-filter-map-docs, r=phansch
...
Fix documentation example for unnecessary_filter_map.
Fixes #4919 .
changelog: none
2019-12-20 07:27:24 +00:00
bors
a86463c99f
Auto merge of #4913 - mikerite:step-by-zero-20191218, r=phansch
...
Move `iterator_step_by_zero` and correct the documentation
Move `iterator_step_by_zero` and correct the documentation.
changelog: Corrected `iterator_step_by_zero` documentation
2019-12-20 07:10:11 +00:00
Lily Chung
6e8c2bf8e6
Fix documentation example for unnecessary_filter_map.
2019-12-19 15:48:17 -08:00
Michael Wright
1559f8bf34
Fix expect_fun_call
false negative on references
...
Closes #4912
2019-12-19 06:57:56 +02:00
mikerite
710e06dd29
Fix iterator_step_by_zero
description in declaration
...
Co-Authored-By: Phil Hansch <dev@phansch.net>
2019-12-19 06:51:26 +02:00
Michael Wright
38d0b2199a
Correct iterator_step_by_zero
documentation
2019-12-18 18:59:59 +02:00
Michael Wright
e097fca4df
Update iterator_step_by_zero
...
Move `iterator_step_by_zero` into `methods` since it applies to all
iterators and not just ranges. Simplify the code while doing so.
2019-12-18 18:59:43 +02:00
Matthias Krüger
98e433d70d
Rustup to rust-lang/rust#66878
2019-12-04 01:34:01 +01:00
Phil Hansch
a05f3cb9a1
Rollup merge of #4847 - rust-lang:offest, r=phansch
...
fixing a typo
changelog: none
2019-11-28 10:19:06 +01:00
Lzu Tao
d0e0ffa99f
make use of Result::map_or
2019-11-28 10:52:20 +07:00
Manish Goregaokar
341e266508
Add BorrowKind::Ref
2019-11-27 14:39:28 -08:00
Andre Bogus
47ef5394de
fixing a typo
2019-11-25 14:06:34 +01:00
flip1995
d2d62de841
Rustup to rust-lang/rust#64856
2019-11-25 13:56:24 +01:00
flip1995
d43c424145
Rustup to rust-lang/rust#66671
2019-11-25 13:18:38 +01:00
bors
cc35165f52
Auto merge of #4840 - flip1995:rollup-jqk3a3i, r=flip1995
...
Rollup of 5 pull requests
Successful merges:
- #4730 (Fix check_infinite_loop (while_immutable_condition) by checking for break or return inside loop body)
- #4766 (Fix false positive in derive_hash_xor_eq)
- #4811 (Literal Representation Restructure)
- #4820 (doc: fix the comment above the lint function)
- #4830 (use more efficient code to generate repeated string)
Failed merges:
r? @ghost
changelog: none
2019-11-23 17:40:57 +00:00
Philipp Krones
ae69bc4980
Rollup merge of #4820 - guanqun:comment-fix, r=flip1995
...
doc: fix the comment above the lint function
it's a simple comment fix.
---
changelog: none
2019-11-23 18:16:01 +01:00
Andre Bogus
c21b198576
New lint: zst_offset
2019-11-15 22:39:27 +01:00
Guanqun Lu
f2d8197110
doc: fix the comment above the lint function
2019-11-16 01:55:06 +08:00
Manish Goregaokar
e9a3e54910
MutImmutable -> Immutable, MutMutable -> Mutable, CaptureClause -> CaptureBy
2019-11-11 10:58:39 -08:00
flip1995
08fd397c2c
Deprecate into_iter_on_array
lint
...
This lint was uplifted/reimplemented by rustc.
Rustup to rust-lang/rust#66017
2019-11-07 14:04:29 +01:00
Lzu Tao
51632530d7
rustup rust-lang/rust#65776
2019-11-06 17:46:45 +07:00
Lzu Tao
4c7387e965
rustup https://github.com/rust-lang/rust/pull/65535
2019-10-19 12:27:21 +07:00
Heinz N. Gies
7f454d8d06
Split out tests
2019-10-18 07:40:48 +02:00
Heinz N. Gies
a7ad78f3eb
Add expect
...
Co-Authored-By: Philipp Krones <hello@philkrones.com>
2019-10-18 07:37:58 +02:00
Michael Zhang
2106a23966
Update help text in inefficient_to_string
...
Co-Authored-By: Manish Goregaokar <manishsmail@gmail.com>
2019-10-17 19:13:32 -04:00
HMPerson1
76b44f34b9
Add inefficient_to_string
lint
2019-10-16 15:54:20 -04:00
Andre Bogus
cc622608db
new lints around #[must_use]
fns
...
`must_use_unit` lints unit-returning functions with a `#[must_use]`
attribute, suggesting to remove it.
`double_must_use` lints functions with a plain `#[must_use]`
attribute, but which return a type which is already `#[must_use]`,
so the attribute has no benefit.
`must_use_candidate` is a pedantic lint that lints functions and
methods that return some non-unit type that is not already
`#[must_use]` and suggests to add the annotation.
2019-10-14 12:09:04 +02:00
bors
b690cdb1e7
Auto merge of #4611 - rust-lang:doc-visibility, r=flip1995
...
account for doc visibility
This fixes #4608 .
Also I noticed that the lint failed to look at trait and impl items. There's a small bit of fallout in the code, too, but not enough to warrant its own commit.
changelog: check docs of trait items and impl items, also make `missing_safety_doc` account for visibility
2019-10-08 07:11:26 +00:00
flip1995
3aa531c194
Run util/dev fmt
2019-10-05 12:42:09 +02:00
flip1995
3b23092b69
Get rid of rvalue_promotable_map method call
2019-10-05 12:38:38 +02:00
Andre Bogus
e3f143ff0a
account for doc visibility
2019-10-02 21:15:28 +02:00
flip1995
4bbd10a585
Rustup to rust-lang/rust#64813
2019-09-27 17:21:20 +02:00
Lzu Tao
a7b7e19f49
Rustup https://github.com/rust-lang/rust/pull/64513
2019-09-26 16:03:36 +07:00
Matthias Krüger
b72982759c
run rustfmt
2019-09-11 08:26:57 +02: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
Andre Bogus
e3c4ffd4aa
Use diagnostic item for
2019-09-09 05:43:39 +02:00
Michael Wright
9bdfd0683f
Fix or_fun_call
bad suggestion
...
Closes #4514
2019-09-08 11:03:45 +02:00
Jeremy Stucki
3fc1ec1ffd
Refactor option handling
2019-09-04 16:19:59 +02: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
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
Andre Bogus
b01f2d1126
lint against MaybeUninit::uninit().assume_init()
2019-09-03 17:37:38 +02:00
flip1995
3c11406c1f
Rustup to rust-lang/rust#60966
2019-08-30 10:11:27 +02:00
flip1995
dac81d867b
Use the spans returned by utils::method_calls
2019-08-29 17:34:03 +02:00
BO41
945d4cf69f
Dereference one less on search_is_some and make it auto-fixable
2019-08-29 17:34:02 +02:00
Yuki Okushi
2c282252a9
Replace Arg
with Param
2019-08-28 18:33:25 +09: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