Maybe Waffle
40a6c519b4
Update tests for type_complexity lint
2021-11-25 12:47:29 +03:00
Maybe Waffle
063f8aa094
Ignore associated types in traits when considering type complexity
2021-11-25 12:08:18 +03:00
bors
35b0f2438d
Auto merge of #8028 - dswij:8016, r=flip1995
...
Add more descriptive help info for `needless_question_mark`
closes #8016
changelog: [`needless_question_mark`] help suggestion now explains what should be changed
2021-11-25 08:10:55 +00:00
Dharma Saputra Wijaya
c0bad8bcab
Add more descriptive help info for needless_question_mark
2021-11-25 14:01:14 +08:00
Jason Newcomb
a135347f5d
Run rustfix for strlen_on_c_strings
tests
2021-11-24 20:16:27 -05:00
Alex Macleod
3957244120
Add needless_late_init
lint
2021-11-23 15:08:49 +00:00
bors
81f37a8150
Auto merge of #8025 - flip1995:rustup, r=flip1995
...
Rustup
Re-sync, because I didn't get to syncing things back to rustc.
r? `@ghost`
changelog: none
2021-11-23 10:27:12 +00:00
flip1995
c46c8c58e9
Bump nightly version -> 2021-11-23
2021-11-23 11:22:49 +01:00
flip1995
5740230ec7
Merge remote-tracking branch 'upstream/master' into rustup
2021-11-23 11:22:34 +01:00
bors
d6c707db53
Auto merge of #7980 - dswij:7870, r=xFrednet
...
Fix FP on `if_then_some_else_none` when there is early return
closes #7870
changelog: [`if_then_some_else_none`] now does not fire when there is early return
2021-11-23 08:20:57 +00:00
dswij
ec3d1c8ca3
Fix FP on if_then_some_else_none
when there is early return
2021-11-23 10:11:30 +08:00
bors
57a8804ef9
Auto merge of #8007 - birkenfeld:octal_escapes, r=xFrednet
...
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.
Fixes #7981
---
*Please write a short comment explaining your change (or "none" for internal only changes)*
changelog: Add new lint [`octal_escapes`], which checks for literals like `"\033[0m"`.
2021-11-22 20:29:53 +00:00
Georg Brandl
1210bb40d3
octal_escapes: note on print!() format strings
2021-11-22 21:02:03 +01:00
Georg Brandl
0bc25d04c6
octal_escapes: emit only one lint for all cases found each literal
2021-11-22 21:00:19 +01:00
Georg Brandl
850e7f533e
octal_escapes
: updates from review, fix byte string prefix
2021-11-22 18:02:17 +01:00
bors
4027594533
Auto merge of #7989 - couchand:2021-11/toolchain-missing-components, r=flip1995
...
Add missing components to rust-toolchain file
Somehow these basic components are missing from the toolchain file...
changelog: none
2021-11-22 09:48:06 +00:00
bors
5fbfdfa319
Auto merge of #8009 - xFrednet:8004-suboptimal-flops-in-const, r=giraffate
...
Allow `suboptimal_flops` in const functions
This PR allows `clippy::suboptimal_flops` in constant functions. The check also effects the `clippy::imprecise_flops` lint logic. However, this doesn't have any effects as all functions checked for are not const and can therefore not be found in such functions.
---
changelog: [`suboptimal_flops`]: No longer triggers in constant functions
Closes : rust-lang/rust-clippy#8004
2021-11-22 00:01:49 +00:00
bors
de2208a351
Auto merge of #7997 - surechen:Fixes_7915, r=giraffate
...
Fixes shadow_same's false positive for #7915
Fix shadow_same's false positive for async function's params(Fixes #7915 ):
Example Code:
```rust
#![deny(clippy::shadow_same)]
pub async fn foo(_a: i32) {
}
```
Output:
```
error: `_a` is shadowed by itself in `_a
```
Hir:
```rust
pub async fn foo(_a: i32)
->
/*impl Trait*/ #[lang = "from_generator"](move |mut _task_context|
{
let _a = _a;
{ let _t = { }; _t }
})
```
Skip checking async function's params.
changelog: Fix shadow_same's false positive for async function's params
2021-11-21 23:48:24 +00:00
Cameron Steffen
8c1c763c2d
clippy: Fix pattern_type_mismatch for loop
2021-11-21 08:16:20 -06:00
Cameron Steffen
e58ffb88e6
Fix Clippy with changed for loop desugar
2021-11-21 08:16:09 -06:00
surechen
846c0bef07
Fixes #7915
...
Fix shadow_same's positive false for async function's params:
Example Code:
```rust
#![deny(clippy::shadow_same)]
pub async fn foo(_a: i32) {
}
```
Output:
```
error: `_a` is shadowed by itself in `_a
```
Hir:
```rust
pub async fn foo(_a: i32)
->
/*impl Trait*/ #[lang = "from_generator"](move |mut _task_context|
{
let _a = _a;
{ let _t = { }; _t }
})
```
Skip checking async function's params.
changelog: Fix shadow_same's positive false for async function's params
2021-11-21 14:28:44 +08:00
bors
32048ebea3
Auto merge of #8011 - birkenfeld:double_backticks, r=xFrednet
...
Avoid inline hints with double backticks for `doc-markdown`
The easiest route here was to ensure that the suggestion is always shown on
its own line, where no additional backticks are added by the diagnostic formatter.
Fixes #8002
---
*Please write a short comment explaining your change (or "none" for internal only changes)*
changelog: Avoid inline hints with double backticks for `doc-markdown`
2021-11-20 17:50:50 +00:00
Georg Brandl
0c4055c283
Avoid inline hints with double backticks for doc-markdown
2021-11-20 18:13:24 +01:00
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