Commit graph

5707 commits

Author SHA1 Message Date
Wilco Kusee
eb70a72459
Fix false negative 2019-02-26 17:29:36 +01:00
Wilco Kusee
fec6e55d1d
Attempt to fix false negative 2019-02-26 17:27:41 +01:00
Wilco Kusee
4cf720abbe
Move lint_map_unwrap_or to its own file 2019-02-26 17:27:41 +01:00
Wilco Kusee
54ab22f6db
Only suggest map_or for copy types 2019-02-26 17:27:40 +01:00
bors
0957f7d3b7 Auto merge of #3817 - rust-lang:fix-bool_comparison-on-non-bool, r=oli-obk
Fix `bool_comparison` with non-`bool` expressions

Fixes #3703.
It just moves around the type check that was already there for some comparison to all of them, because if one type isn't `bool`, none of those comparison can be simplified.
2019-02-26 15:51:40 +00:00
Grzegorz
a7f4d41a7d do not trigger redundant_closure when there is a difference in borrow level between closure parameter and "self" 2019-02-26 12:12:27 +01:00
bors
412d41ae86 Auto merge of #3814 - ljedrz:HirIdification_lockstep_upgrade, r=phansch
HirIdify some lints

Unblocks https://github.com/rust-lang/rust/pull/58561 (a part of [rust-lang/rust#57578](https://github.com/rust-lang/rust/pull/57578)). Can we branch it like with https://github.com/rust-lang/rust-clippy/pull/3790? I can rebase on a different commit if need be.

Haven't had time to run tests yet, so I'd wait for Travis 🙈.
2019-02-26 10:43:50 +00:00
ljedrz
c1b65ec363 fix line format 2019-02-26 11:21:07 +01:00
bors
d0717d1f95 Auto merge of #3819 - mikerite:rustfmt-formatting-tests, r=phansch
Add [rustfmt::skip] to formatting lint tests
2019-02-26 07:21:01 +00:00
bors
47e93ff865 Auto merge of #3820 - mikerite:remove-feature-try-from, r=Manishearth
Remove `#[feature(try_from)]`

`try_from` is now stable.
2019-02-26 06:52:34 +00:00
Michael Wright
c9d79c0c5e Remove #[feature(try_from)]
`try_from` is now stable.
2019-02-26 08:43:47 +02:00
Michael Wright
7fd0fbf435 Add [rustfmt::skip] to formatting lint tests 2019-02-26 07:49:46 +02:00
Philipp Hansch
64b400a1f4
Update changelog for Rust 1.33 2019-02-25 22:53:02 +01:00
mcarton
c0c0686a65 Fix bool_comparison with non-bool expressions 2019-02-25 22:31:16 +01:00
bors
50d9473856 Auto merge of #3808 - mikerite:useless-format-suggestions, r=oli-obk
Fix `useless_format` suggestions
2019-02-25 16:21:26 +00:00
bors
2141ebf695 Auto merge of #3816 - g-bartoszek:redundant_closure_for_macros, r=Manishearth
do not trigger redundant_closure for external macros

fixes #3791
2019-02-25 13:46:31 +00:00
Grzegorz
41f197460f redundant_closure does not trigger for external macros 2019-02-25 13:40:28 +01:00
bors
1ac6f4e9ae Auto merge of #3772 - flip1995:ice-3719, r=Manishearth
Fix ICE #3719+#3718 in lint match_ref_pats

Fixes #3719
This conveniently also fixes #3718

The ICE occurs when the match expression was a macro call, where the macro was defined in another file. Since we don't have the ability to reproduce this behavior with our UI tests (AFAIK), I couldn't add a test reproducing this ICE.. However, I added a test which is related to the ICE, to show the new behavior of the lint.

I tested it with the mscheme repo locally and the ICE didn't happen anymore.

r? @matthiaskrgr
2019-02-25 12:30:35 +00:00
bors
cd29740e6e Auto merge of #3805 - martinsp:ice-3747, r=Manishearth
Fix ICE #3747

I'm not sure if this was the correct approach.

I don't know if I put tests/ui/crashses/ice-3747.rs in correct place because the test always passed when I ran it with `cargo test`, even without the fix applied.

If I run that test with `env CLIPPY_TESTS=true cargo run --bin clippy-driver -- -L ./target/debug tests/ui/crashes/ice-3747.rs` then the test correctly fails without the fix applied

fixes #3747
2019-02-25 12:08:43 +00:00
ljedrz
7bc2e1d60d fix: replace wrong id 2019-02-25 11:06:46 +01:00
bors
1233b39ca9 Auto merge of #3815 - phansch:make_private, r=Manishearth
Make DiagnosticWrapper private

It's doesn't have to be public anywhere outside of clippy_lints as far as I can tell.
2019-02-25 06:31:27 +00:00
Philipp Hansch
bd949328f1
Make DiagnosticWrapper private
It's doesn't have to be public anywhere outside of clippy_lints
2019-02-25 07:19:56 +01:00
ljedrz
8dac8a6ba4 HirIdify some lints 2019-02-24 20:49:43 +01:00
bors
e99611bc39 Auto merge of #3811 - rust-lang:test-for-2526, r=mcarton
Add a test for #2526

Closes #2526, which seems to have been fixed at some point, but I couldn't find a test for it.
2019-02-24 17:25:58 +00:00
mcarton
8bcd546648 Add a test for #2526 2019-02-24 18:23:54 +01:00
bors
5833e4d26e Auto merge of #3810 - phansch:refactor/extract_module, r=flip1995
Extract diagnostics module and document some functions

This moves the lint building functions from `utils/mod.rs` to their own
`utils/diagnostics.rs` file. Also adds documentation for three of them.
2019-02-24 15:35:01 +00:00
bors
1ce961f083 Auto merge of #3790 - ljedrz:HirIdify_intravisit, r=phansch
partially HirIdify lints

Enables https://github.com/rust-lang/rust/pull/58232 (a part of https://github.com/rust-lang/rust/pull/57578).
2019-02-24 14:32:55 +00:00
ljedrz
601cbc6d84 fix formatting 2019-02-24 15:16:16 +01:00
Philipp Hansch
7d883cddbc
Extract diagnostics module and document some functions
This moves the lint building functions from `utils/mod.rs` to their own
`utils/diagnostics.rs` file. Also adds documentation for three of them.
2019-02-24 14:11:05 +01:00
Philipp Hansch
ff1b1a7c9f
Document some span_lint_* util functions 2019-02-24 09:49:17 +01:00
Michael Wright
0182a6640e Fix useless_format suggestions 2019-02-24 07:30:08 +02:00
Martins Polakovs
391ee7987d Fix ICE #3747
[Martins Polakovs, John Firebaugh]
2019-02-23 21:38:16 +02:00
bors
68114c40cb Auto merge of #3798 - eyko:patch-1, r=flip1995
Fix broken link in README

I noticed the link to the lint list had a typo, so this PR is just that:

```diff
- [lint list]](https://rust-lang.github.io/rust-clippy/master/index.html)
+ [lint list](https://rust-lang.github.io/rust-clippy/master/index.html)
```
2019-02-23 14:50:39 +00:00
bors
848116b410 Auto merge of #3801 - Wilfred:patch-1, r=Manishearth
Fix broken markdown in README.md
2019-02-23 00:23:56 +00:00
Wilfred Hughes
4f8c1d100d
Fix broken markdown in README.md 2019-02-23 00:20:57 +00:00
Vincent Martínez
fe7b9e2f6a
Fix broken link in README 2019-02-22 15:17:53 +00:00
bors
cbd6b7d652 Auto merge of #3796 - rust-lang:clarify-readme, r=oli-obk
Clarify lint groups in readme

I'm explicitly avoiding mention of the deprecated/restriction lint groups, those exist more for testing purposes and are not really something people should be using.

r? @oli-obk @phansch

fixes #2964
2019-02-22 09:18:21 +00:00
Manish Goregaokar
50f1dd6af8 Clarify lint groups in readme 2019-02-22 13:29:33 +05:30
bors
36e92a521f Auto merge of #3795 - mikerite:test-rustfmt, r=phansch
Allow rustfmt to run on more tests
2019-02-22 06:54:25 +00:00
Michael Wright
7a43509cc4 rustfmt tests/ui/methods.rs 2019-02-22 08:05:21 +02:00
Michael Wright
b96c4329db Add #[rustfmt::skip] to methods tests
Many people run rustfmt automatically on save. Format-dependent tests
should be marked with `#[rustfmt::skip]` to prevent accidental
reformatting from this. As a bonus the rest of the code can the formatted.
2019-02-22 07:49:17 +02:00
Michael Wright
5332cdb7dc Remove unneeded visitor class
Use ExprUseVisitor correctly instead.
2019-02-22 07:06:51 +02:00
bors
a5c16e5892 Auto merge of #3789 - bzzzzzz:needless_range_loop_bugfix, r=oli-obk
Make needless_range_loop not applicable to structures without iter method

Fixes https://github.com/rust-lang/rust-clippy/issues/3788

Now we will start lint indexed structure only if it has known iter or iter_mut method implemented.
2019-02-21 09:36:13 +00:00
Michael Wright
9d6ecc7485 Fix boxed_local suggestion
Don't warn about an argument that is moved into a closure.

ExprUseVisitor doesn't walk into nested bodies so use a new
visitor that collects the variables that are moved into closures.

Fixes #3739
2019-02-21 06:59:10 +02:00
bzzzz
7767b3a081 Fixed formatting and typo 2019-02-20 10:12:24 -08:00
bors
027dde92e2 Auto merge of #3781 - uniphil:write_with_newline_false_positive, r=oli-obk
Don't check [print/write]_with_newline on raw strings

Some tests for #3778 and some maybe-not-the-greatest code that passes those tests!

I didn't run `fmt` because a) it doesn't seem to install on nightly for me, and b) on stable it wanted to apply formatting to over 90 files. Happy to make any tweaks though!

I suspect this contribution may require more than just tweaks. I'm still sort of new to rust so it may not be idiomatic, and the specific approach I took feels a little heavy-handed and brittle. I'm happy to make changes with some guidance, or equally happy if this gives a starting place for someone else to do it better :)
2019-02-20 16:37:32 +00:00
ljedrz
1fac380886 partially HirIdify lints 2019-02-20 13:16:16 +01:00
bors
d5d8d7bca5 Auto merge of #3779 - mikerite:fix-3704, r=phansch
Improve `iter_cloned_collect` suggestions

Fixes #3704
2019-02-20 09:21:18 +00:00
bzzzz
f9c6682827 Make needless_range_loop not applicable to structures without iter method 2019-02-20 00:10:25 -08:00
Michael Wright
bef7c76025 Format again 2019-02-20 06:06:00 +02:00