ThibsG
092fe209a6
Move deref closure builder to clippy_utils::sugg
module
2021-11-20 15:48:21 +01:00
xFrednet
1c8085d705
Allow suboptimal_flops
in const functions
2021-11-20 15:39:29 +01:00
bors
827fd501d0
Auto merge of #8000 - Jarcho:nightly_fmt, r=llogiq
...
Don't check for a nightly toolchain in fmt test
changelog: None
2021-11-20 14:06:17 +00:00
Georg Brandl
982124acfa
Add new lint octal_escapes
...
This checks for sequences in strings that would be octal character
escapes in C, but are not supported in Rust. It suggests either
to use the `\x00` escape, or an equivalent hex escape if the octal
was intended.
2021-11-20 11:57:25 +01:00
togami2864
ec7364f227
add test suit
2021-11-20 18:49:30 +09:00
ThibsG
5ebede0c14
Fix full projection identifier + move applicability to MaybeIncorrect
2021-11-20 09:40:11 +01:00
ThibsG
1176b8e5e9
Handle closures with type annotations on args
2021-11-20 09:40:11 +01:00
ThibsG
2ff702cbb5
Rephrase the fn checking for a double ref, not only one
2021-11-20 09:40:11 +01:00
ThibsG
7221999181
Add tests with closure
2021-11-20 09:40:11 +01:00
ThibsG
abaaf744fd
Add some notes about MethodCall
cases
2021-11-20 09:40:11 +01:00
ThibsG
268ef407a6
Add test case for references bindings
2021-11-20 09:40:11 +01:00
ThibsG
90a72f506c
Handle args taken by ref also for MethodCall
2021-11-20 09:40:11 +01:00
ThibsG
7a55407cc3
Fix suggestions when call functions involved taking by ref
2021-11-20 09:40:11 +01:00
ThibsG
6d1ccbf466
Correct suggestion when dereferencing enough, calling a function
2021-11-20 09:40:11 +01:00
ThibsG
ac45a83ad5
Handle multiple reference levels into binding type and add more tests
2021-11-20 09:40:11 +01:00
ThibsG
788c9ccc93
Applying refactoring for simplified code
2021-11-20 09:40:11 +01:00
ThibsG
91dd9c46de
Handle other projection kinds
2021-11-20 09:40:11 +01:00
ThibsG
97783a8cb9
Return a struct and add applicability
2021-11-20 09:40:11 +01:00
ThibsG
d0dd797709
Build end of suggestion only once at the end of the process
2021-11-20 09:40:11 +01:00
ThibsG
9ab4b673eb
Simplifying next_pos
init
2021-11-20 09:40:11 +01:00
ThibsG
e24aba2c1a
Use applicability for snippets
2021-11-20 09:40:11 +01:00
ThibsG
6dca4f261d
Add some doc for search_is_some
lint
2021-11-20 09:40:11 +01:00
ThibsG
ddcbac37ae
Split tests (too long for CI)
2021-11-20 09:40:10 +01:00
ThibsG
b38f173aa3
Build suggestion within visitor + add more tests
2021-11-20 09:40:10 +01:00
ThibsG
5ed93af9c4
Use ExprUseVisitor
and multipart suggestion to avoid iffy String
replacement
2021-11-20 09:40:10 +01:00
ThibsG
f4c75cde5e
Fix any()
not taking reference in search_is_some
lint
2021-11-20 09:40:10 +01:00
Jason Newcomb
0d1f1cec44
Remove surrounding unsafe block in strlen_on_c_strings
when possible
2021-11-19 21:14:51 -05:00
Jason Newcomb
c443f8fb95
Fix strlen_on_c_strings
when not used with a full path
2021-11-19 20:02:49 -05:00
Jason Newcomb
1429949f9f
Don't check for a nightly toolchain in fmt test
2021-11-19 19:43:31 -05:00
bors
38bd2514ad
Auto merge of #7984 - phansch:disallowed-type-rename, r=xFrednet
...
Pluralize `disallowed_type` lint
This was brought up in [Zulip] and is also mentioned in the lint naming
conventions. Since this is still a nursery lint, I think there shouldn't
be any problem in renaming it.
[Zulip]: rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/disallow_type.20vs.20disallowed-types
changelog: Rename nursery lint [`disallowed_type`] to [`disallowed_types`].
2021-11-19 13:39:08 +00:00
bors
0d283cc44c
Auto merge of #7996 - togami2864:test-map-or-none, r=Manishearth
...
Add test case for RESULT_MAP_OR_INTO_OPTION
just added test case for RESULT_MAP_OR_INTO_OPTION.
changelog: none
2021-11-19 07:47:39 +00:00
togami2864
cd81bb9dc3
fix stderr
2021-11-19 16:17:17 +09:00
togami2864
abb7155387
add test case for result_map_or_into_option
2021-11-19 16:12:46 +09:00
bors
2776076efa
Auto merge of #7977 - Jarcho:multi_needless_borrow, r=xFrednet
...
Improve `needless_borrow` lint
fixes : #5327
fixes : #1726
fixes : #1212
This is merging `needless_borrow` into the `dereference` pass in preparation for `explicit_auto_deref`. `explicit_auto_deref` needs to implement most of what `needless_borrow` implements in order to work.
There is a minor regression here where `let x: &str = &x.deref()` will trigger `needless_borrow` without triggering `explicit_deref_methods`. Removing the redundant borrow will cause `explicit_deref_methods` to trigger. This will be fixed when `explicit_auto_deref` is implemented.
changelog: Lint `needless_borrow` when a borrow is auto-derefed more than once
changelog: Lint `needless_borrow` in the trailing expression of a block for a match arm
2021-11-18 23:35:03 +00:00
Andrew Dona-Couch
0375d20e3f
Add missing components to rust-toolchain file
2021-11-18 16:57:07 -05:00
flip1995
9b38fb7b71
Also pluralize disallowed_method(s) lint
...
To stay consistent with the sister lint disallowed_type, also rename the
disallowed_method lint to disallowed_methods.
2021-11-18 17:37:06 +01:00
Philipp Hansch
a0d81d1327
Pluralize disallowed_type lint filenames
...
This way they match up with the pluralized lint name as well.
2021-11-18 17:37:06 +01:00
Philipp Hansch
b7f18916fa
Pluralize disallowed_type lint
...
This was brought up in [Zulip] and is also mentioned in the lint naming
conventions. Since this is still a nursery lint, I think there shouldn't
be any problem in renaming it.
[Zulip]: https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/disallow_type.20vs.20disallowed-types
2021-11-18 17:37:02 +01:00
bors
8dd1bce263
Auto merge of #7994 - flip1995:rustup, r=flip1995
...
Rustup
r? `@ghost`
changelog: none
2021-11-18 11:31:49 +00:00
flip1995
4bccd59a69
Bump nightly version -> 2021-11-18
2021-11-18 12:22:22 +01:00
flip1995
731dfde267
Merge remote-tracking branch 'upstream/master' into rustup
2021-11-18 12:22:00 +01:00
bors
8536647e61
Auto merge of #7992 - togami2864:fix-typo, r=giraffate
...
fix typo
just fixed typo
changelog: none
2021-11-18 08:46:52 +00:00
togami2864
b5a61aa901
fix typo
2021-11-18 17:37:00 +09:00
Vadim Petrochenkov
cb62680262
rustc: Remove #[rustc_synthetic]
...
This function parameter attribute was introduced in https://github.com/rust-lang/rust/pull/44866 as an intermediate step in implementing `impl Trait`, it's not necessary or used anywhere by itself.
2021-11-18 14:32:29 +08:00
bors
bb58dc84c1
Auto merge of #7968 - Jarcho:manual_map_unsafe, r=xFrednet
...
Fix `manual_map` with unsafe functions
fixes : #7820
changelog: Fix `manual_map` suggestion when used with unsafe functions and unsafe blocks
2021-11-17 16:20:04 +00:00
bors
6ac42fe6fa
Auto merge of #7971 - togami2864:fix/option-map-or-none, r=llogiq
...
fix suggestion in option_map_or_none
fix : #7960
changelog: change suggestion in the lint rule `option_map_or_none`
2021-11-17 16:01:55 +00:00
togami2864
8e317f5283
fix suggestion message
2021-11-18 00:43:49 +09:00
Jason Newcomb
5f861ee1ae
Addition manual_map
test for unsafe
blocks
2021-11-17 10:39:53 -05:00
Jason Newcomb
8506f66294
Minor simplification to manual_map
2021-11-17 10:36:13 -05:00
togami2864
006c442657
check whether stmts is empty or not in block
2021-11-18 00:36:11 +09:00