Matthias Krüger
d0ca09883e
rustup https://github.com/rust-lang/rust/pull/57428/
2019-06-06 09:21:19 +02:00
Michael Wright
b36d7a0c61
Remove to_string()
s from CompilerLintFunctions
2019-06-06 07:12:12 +02:00
Mateusz Mikuła
a3ace5c3ca
Cargo fmt
2019-06-02 18:58:11 +02:00
Mateusz Mikuła
9fefe36737
Rustup for https://github.com/rust-lang/rust/pull/61276
2019-06-02 18:30:40 +02:00
Lzu Tao
f67c3e4b2a
Make use of new outer_expn_info()
function
2019-06-01 16:25:51 +07:00
Oliver Scherer
f98e4bd33b
Fix Block
dump in author lint
2019-05-28 13:01:11 +02:00
Oliver Scherer
73d1830812
Rustup to rustc 1.36.0-nightly ( fa40a111f
2019-05-27)
2019-05-27 21:58:54 +02:00
Matthias Krüger
c67d2b121a
rustup https://github.com/rust-lang/rust/pull/60803/
2019-05-24 15:25:36 +02:00
Philipp Hansch
aca56727db
Rustup to https://github.com/rust-lang/rust/pull/59545
2019-05-24 08:19:51 +02:00
Philipp Hansch
635a2fa5df
Rustup to https://github.com/rust-lang/rust/pull/60740
...
changelog: none
2019-05-23 07:19:25 +02:00
Manish Goregaokar
a6cf35264f
Rustup to rustc 1.36.0-nightly ( dbfe70dfc
2019-05-22)
2019-05-21 21:58:27 -07:00
Oliver Scherer
f49ef0ec04
Dogfood
2019-05-18 01:42:15 +02:00
Oliver Scherer
462df72100
Dogfood and rustfmt
2019-05-18 00:58:25 +02:00
Oliver Scherer
f7f85a0dca
Prevent symbocalypse
2019-05-17 23:53:54 +02:00
flip1995
5dea5d404c
Fix dogfood errors
2019-05-14 15:08:29 +02:00
flip1995
4b4d734758
Also hash mem::discriminant in hash_stmt
2019-05-14 14:13:23 +02:00
Oliver Scherer
f11b236087
mem::discriminant trumps manual discriminant hashing
2019-05-14 14:04:55 +02:00
Oliver Scherer
bc031d4c74
Properly hash enums
2019-05-14 13:57:48 +02:00
Oliver Scherer
dfbc74b08b
Rustfmt all the things
2019-05-14 10:33:48 +02:00
Oliver Scherer
af80c53450
Clippy dogfood
2019-05-14 10:33:48 +02:00
Oliver Scherer
b2dbda4d48
Use symbols instead of strings
2019-05-14 10:33:42 +02:00
Manish Goregaokar
abf6481f87
Add in_macro again
2019-05-11 21:39:37 -07:00
Manish Goregaokar
7eb8018554
Rename in_macro to in_macro_or_desugar
2019-05-11 21:39:02 -07:00
Manish Goregaokar
19cfb84405
Start handling desugarings in author lint
2019-05-10 23:43:58 -07:00
Manish Goregaokar
0499184201
Ignore desugarings in macro checks
2019-05-10 23:40:42 -07:00
Manish Goregaokar
5661e5947f
Add IfDesugar to desugaring_name
2019-05-10 23:40:42 -07:00
Manish Goregaokar
69b1da4d82
Remove some unnecessary If arms
2019-05-10 23:40:42 -07:00
Manish Goregaokar
e7af60f258
Add util function for desugaring if block
2019-05-10 23:40:42 -07:00
Andy Russell
9ede56f383
use derive
feature over serde_derive
crate
2019-05-09 13:05:34 -04:00
Matthias Krüger
857c2c53bf
rustup https://github.com/rust-lang/rust/pull/60586
...
cc https://github.com/rust-lang/rust/issues/60623
2019-05-08 06:58:37 +02:00
Matthias Krüger
d618637c05
Rustup to rustc 1.36.0-nightly ( 13fde05b1
2019-05-03)
2019-05-03 22:28:34 -07:00
Matthias Krüger
f195680edb
more Use->DropTemps fixes
2019-05-01 23:04:35 +02:00
Matthias Krüger
24e856f10a
rustup https://github.com/rust-lang/rust/pull/60417/
...
cc https://github.com/rust-lang/rust/issues/60448
2019-05-01 22:18:16 +02:00
André Luis Leal Cardoso Junior
e428862c95
Update find(p).map(p) occurrences to use find_map(p)
2019-04-30 16:45:32 -03:00
Michael Wright
5ad79c2b3d
Fix breakage due to rust-lang/rust#60225
2019-04-28 09:11:20 +02:00
Philipp Hansch
1f5a3c6e52
Rustup for https://github.com/rust-lang/rust/pull/59042
2019-04-25 07:29:23 +02:00
Manish Goregaokar
7e2043de2f
Ignore all enum and struct constructors in lints about *or(call())
2019-04-23 08:01:42 -07:00
Philipp Hansch
850c24edd3
Fix false positive in module_name_repetitions lint
...
This lint was triggering on modules inside expanded attrs, like
for example `#[cfg(test)]` and possibly more.
2019-04-19 12:53:03 +02:00
Matthew Kraai
753c39672e
Use lint pass macros
...
Fixes #3917 .
2019-04-17 09:35:22 -07:00
flip1995
ce87051779
Fix lint_without_lint_pass internal lint
2019-04-17 06:51:21 -07:00
flip1995
840eac2c05
Use {get,match}_def_path from LateContext
2019-04-17 12:53:29 +02:00
flip1995
2f100e04af
Remove uplifted functions {get,match}_def_path from Clippy
2019-04-17 12:51:57 +02:00
flip1995
5361b842d1
Remove clippy::default_hash_types internal lint
2019-04-15 13:21:52 +02:00
Manish Goregaokar
2156f6733e
Clean up unused cx parameters
2019-04-14 13:23:43 -07:00
Manish Goregaokar
1b2f2be085
Remove now-unnecessary calls to node_to_hir_id
2019-04-14 13:11:31 -07:00
flip1995
3fe5eea4e4
Fix get_def_path
...
This fix is obsolet once rust-lang/rust#59779 and #3926 is merged.
2019-04-12 11:59:06 +02:00
Tomas Koutsky
603996c9d5
Support updated type dependent def ID getter
2019-04-10 16:18:02 +02:00
Andy Russell
0d50d44ea6
use a multispan for MANY_SINGLE_CHAR_NAMES
2019-04-05 10:07:39 -04:00
flip1995
bbb7963735
Fix dogfood error of question_mark lint fix
2019-04-01 20:37:05 +02:00
flip1995
6f01ecfefd
Fix question_mark lint+test
2019-04-01 20:37:05 +02:00
Oliver Scherer
d020565ed2
Hacky rustup
2019-03-26 10:55:03 +01:00
Mateusz Mikuła
6cb0605600
Cargo fmt
2019-03-18 13:39:11 +01:00
Mateusz Mikuła
0ea5e38a9e
name -> check_name
2019-03-18 12:54:10 +01:00
Mateusz Mikuła
e63a685412
NestedMetaItemKind -> NestedMetaItem
2019-03-18 12:54:10 +01:00
Mateusz Mikuła
cb3aa7480c
Fix path_qualified
...
As suggested by eddyb
2019-03-18 12:54:10 +01:00
Mateusz Mikuła
9b7ff501a6
Replace most of ty:Ty with Ty
2019-03-18 12:54:10 +01:00
flip1995
4832a853c7
Feed dog
2019-03-16 15:39:02 +01:00
flip1995
180e07e99e
Adapt paths to new formatting
2019-03-16 15:22:31 +01:00
flip1995
3c4616d303
cargo fmt
2019-03-16 11:51:57 +01:00
flip1995
254fad95de
Use LocalInternedString inside of AbsolutePathPrinter
2019-03-16 11:45:29 +01:00
flip1995
dae5c9c685
AbsolutePathBuffer -> AbsolutePathPrinter
2019-03-16 11:17:36 +01:00
flip1995
31435cd7f5
Reimplement AbsolutePathBuffer
2019-03-15 23:42:46 +01:00
Philipp Hansch
8a59f81180
Rename span_lint_node* functions to span_lint_hir*
...
Because they now take a `hir_id` instead of a `node_id` argument.
2019-03-12 08:01:21 +01:00
Alexander Regueiro
d2b85323ad
Addressed points raised in review.
2019-03-10 18:06:28 +00:00
Alexander Regueiro
d43966a176
Various cosmetic improvements.
2019-03-10 18:06:28 +00:00
bors
ccfbfb8097
Auto merge of #3860 - phansch:refactor_out_opt_def_id, r=flip1995
...
Refactor: Remove utils::opt_def_id
This removes some indirection. Probably this method was uplifted to
rustc at some point?
2019-03-09 12:05:41 +00:00
Philipp Krones
c32135a87f
Rollup merge of #3857 - phansch:document_path_qpath, r=flip1995
...
Document match_path, improve match_qpath docs
Inching towards enabling `#[deny(missing_docs)]` in utils 📜
2019-03-09 12:24:44 +01:00
Philipp Krones
1902384d15
Rollup merge of #3851 - phansch:refactor_trait_stuff, r=flip1995
...
Refactor: Extract `trait_ref_of_method` function
This pattern was used in three places after #3844 , so I think it's worth moving it into `utils/mod.rs` and documenting it.
2019-03-09 12:24:42 +01:00
Philipp Hansch
9d97ed6faa
Refactor: Remove utils::opt_def_id
...
This removes some indirection. Probably this method was uplifted to
rustc at some point?
2019-03-08 14:14:41 +01:00
Philipp Hansch
f04acdd463
Document match_path, improve match_qpath docs
2019-03-08 09:50:20 +01:00
Philipp Krones
837d675afd
Update clippy_lints/src/utils/mod.rs
...
Co-Authored-By: phansch <dev@phansch.net>
2019-03-08 09:40:12 +01:00
Philipp Hansch
65694cc6c8
Fix doctest
2019-03-08 09:10:41 +01:00
ljedrz
5d78250c75
align with rust-lang/rust/#58992
2019-03-07 21:51:05 +01:00
rchaser53
ae787d954e
fix missing a semicolon
2019-03-07 23:26:47 +09:00
Philipp Hansch
e1d47cd5f1
Refactor: Extract trait_ref_of_method
function
2019-03-07 08:17:43 +01:00
Félix Fischer
ddc718087f
Renamed: Cyclomatic Complexity -> Cognitive Complexity
...
* Ran automatic naming update
* Formalized rename of `cyclomatic_complexity` to `cognitive_complexity`
** Added the rename to `lib.rs`
** Added rename test
* Added warning for deprecated key `cyclomatic_complexity_threshold` and tests for it
* Added deprecation status for Clippy's builtin attribute
* Updated tests for new builtin attribute renaming
2019-03-06 10:07:38 -03:00
Andy Russell
fe96ffeac9
move lint documentation into macro invocations
2019-03-05 18:45:08 -05:00
ljedrz
f3363b9cf2
align with rust-lang/rust/#58836
2019-03-01 19:10:14 +01:00
ljedrz
f2587703cc
enable rust-lang/rust#58754
2019-03-01 19:10:14 +01:00
flip1995
1463d6f69f
Error an unknown or deprecated Clippy attribute
2019-02-28 16:44:42 +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
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
ljedrz
7bc2e1d60d
fix: replace wrong id
2019-02-25 11:06:46 +01: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
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
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
bzzzz
7767b3a081
Fixed formatting and typo
2019-02-20 10:12:24 -08:00
ljedrz
1fac380886
partially HirIdify lints
2019-02-20 13:16:16 +01:00
bzzzz
f9c6682827
Make needless_range_loop not applicable to structures without iter method
2019-02-20 00:10:25 -08:00
flip1995
75f39881d4
Document the new Sugg
functions
2019-02-19 21:34:14 +01:00
flip1995
1a86d80c10
Implement Sugg::hir_with_macro_callsite
2019-02-19 21:34:14 +01:00
Michael Howell
2df14c3701
Add a lint to warn on T: Drop
bounds
...
**What it does:** Checks for generics with `std::ops::Drop` as bounds.
**Why is this bad?** `Drop` bounds do not really accomplish anything.
A type may have compiler-generated drop glue without implementing the
`Drop` trait itself. The `Drop` trait also only has one method,
`Drop::drop`, and that function is by fiat not callable in user code.
So there is really no use case for using `Drop` in trait bounds.
**Known problems:** None.
**Example:**
```rust
fn foo<T: Drop>() {}
```
2019-02-17 22:53:08 -07:00
flip1995
10811d5d89
Fix breakage from rust-lang/rust#58296
2019-02-14 14:01:43 +01:00
flip1995
5a3cd31c9e
Rustup
...
cc rust-lang/rust#58137
2019-02-13 22:08:17 +01:00
Grzegorz
16881390e1
removing redundant closures in the whole project
2019-02-10 13:35:44 +01:00
bors
5725726345
Auto merge of #3751 - h-michael:opt-def-id, r=phansch
...
Use Hir::Def opt_def_id
related with: https://github.com/rust-lang/rust-clippy/pull/3750#issuecomment-462010225
Using `def.opt_def_id` in `opt_def_id` before replacing all all at once.
2019-02-09 12:01:45 +00:00
Hirokazu Hata
71dfbe2072
Use Hir::Def opt_def_id
2019-02-09 13:28:21 +09:00
bors
77435f9938
Auto merge of #3748 - phansch:uitest, r=oli-obk
...
Add a uitest subcommand to simplify UI test invocation
This makes running single tests a lot easier.
It's now
`TESTNAME=xxx cargo uitest`
instead of
`TESTNAME=xxx cargo test --test compile-test`
2019-02-09 04:09:25 +00:00
Hirokazu Hata
66f8fa320b
Add new Def type ConstParam
2019-02-09 11:42:13 +09:00
Philipp Hansch
f934f98111
Add a uitest subcommand to simplify UI test invocation
...
This allows to run
`TESTNAME=xxx cargo uitest`
instead of
`TESTNAME=xxx cargo test --test-compile-test`
2019-02-08 08:09:37 +01:00
bors
e176324fc5
Auto merge of #3665 - jsgf:master, r=oli-obk
...
Start making clippy easier to invoke in non-cargo contexts
Clippy (clippy-driver) currently has a couple of strong but unnecessary couplings with cargo. This series:
1. makes detection of check builds more robust, and
2. make clippy-driver use the --sysroot specified on the command line as its internal sysroot.
2019-02-06 15:43:07 +00:00
bors
4259377ea6
Auto merge of #3725 - mikerite:fix-2728, r=phansch
...
Fix `cast_sign_loss` false positive
This checks if the value is a non-negative constant before linting about
losing the sign.
Because the `constant` function doesn't handle const functions, we check if
the value is from a call to a `max_value` function directly. A utility method
called `get_def_path` was added to make checking for the function paths
easier.
Fixes #2728
2019-02-04 05:52:44 +00:00
Michael Wright
f3ee53d225
Document get_def_path
2019-02-04 07:30:24 +02:00
Michael Wright
c02367c4e9
Fix breakage due to rust-lang/rust#58079
...
The rustc change added HirId to a few nodes. As I understand it, the plan is
to remove the NodeId from these nodes eventually. Where the NodeId was
not being matched, I used `..` to try and avoid further breakage. Where it
was, I used `_` to make the fix easier when NodeId is removed.
2019-02-03 09:12:07 +02:00
Jeremy Fitzhardinge
86c513e605
Let CLIPPY_CONF_DIR be used to start search for config, and fall back to
...
CARGO_MANIFEST_DIR if it isn't set. If CARGO_MANIFEST_DIR isn't set, fall back
"." rather than panicing.
Issue #3663
2019-02-02 11:43:21 -08:00
Unknown
c1f4e18453
Adding back tests, but also reducing threshold by 1
2019-02-01 13:21:19 -05:00
Araam Borhanian
1169066a0b
Adding lint for too many lines.
2019-02-01 13:21:19 -05:00
Michael Wright
3cf8c0b3b5
Fix cast_sign_loss
false positive
...
This checks if the value is a non-negative constant before linting about
losing the sign.
Because the `constant` function doesn't handle const functions, we check if
the value is from a call to a `max_value` function directly. A utility method
called `get_def_path` was added to make checking for the function paths
easier.
Fixes #2728
2019-01-31 06:32:29 +02:00
Philipp Hansch
d0d7c5e922
cargo fmt
2019-01-29 19:56:19 +01:00
Philipp Hansch
0c6bdda562
Use built-in entry_fn detection over self-built
2019-01-29 08:19:05 +01:00
Philipp Hansch
c0a02691d8
cargo fmt
2019-01-29 08:19:05 +01:00
Philipp Hansch
c3980bf0bc
Add initial version of const_fn lint
2019-01-29 08:19:05 +01:00
bors
410d5ba6c3
Auto merge of #3700 - phansch:would_you_like_some_help_with_this_const_fn, r=oli-obk
...
Prevent incorrect cast_lossless suggestion in const_fn
`::from` is not a const fn, so applying the suggestion of
`cast_lossless` would fail to compile. The fix is to skip the lint if
the cast is found inside a const fn.
Fixes #3656
2019-01-28 14:30:18 +00:00
Oliver Scherer
7b90cb529a
Update more changed iterator paths
2019-01-28 10:16:34 +01:00
Oliver Scherer
36245feeb0
Update changed iterator paths
2019-01-28 10:09:45 +01:00
Matthias Krüger
3a96d6b603
rustup https://github.com/rust-lang/rust/pull/57907/
...
for file in `fd \.rs$` ; do sed -i s/span_suggestion_with_applicability/span_suggestion/g $file ; done
for file in `fd \.rs$` ; do sed -i s/span_suggestion_short_with_applicability/span_suggestion_short/g $file ; done
for file in `fd \.rs$` ; do sed -i s/span_suggestions_with_applicability/span_suggestions/g $file ; done
2019-01-27 13:33:56 +01:00
Matthias Krüger
e9e0a7e3bd
rustup https://github.com/rust-lang/rust/pull/57726
2019-01-27 01:42:34 +01:00
Philipp Hansch
8c416c3197
Prevent incorrect cast_lossless suggestion in const_fn
...
`::from` is not a const fn, so applying the suggestion of
`cast_lossless` would fail to compile. The fix is to skip the lint if
the cast is found inside a const fn.
2019-01-26 10:57:15 +01:00
bors
a069320fd7
Auto merge of #3684 - g-bartoszek:sugg-snippet-modifications, r=phansch
...
"make_return" and "blockify" convenience methods, fixes #3683
…ed them in "needless_bool".
2019-01-22 20:18:11 +00:00
Oliver Scherer
d6c806378e
Rustfmt all the things
2019-01-22 16:27:42 +01:00
Oliver Scherer
38cdf63acf
Don't make decisions on values that don't represent the decision
2019-01-22 15:28:51 +01:00
Oliver Scherer
3168023cc8
Rustup
2019-01-22 15:17:05 +01:00
Grzegorz Bartoszek
0f5c43a722
Added "make_return" and "blockify" convenience methods in Sugg and used them in "needless_bool".
2019-01-22 14:07:53 +01:00
Michael Wright
a747dbb04f
Fix breakage due to rust-lang/rust#57651
2019-01-20 22:56:07 +02:00
Michael Wright
8747691bea
Run rustfmt
2019-01-20 12:49:45 +02:00
Michael Wright
f51f0178dd
Fixed breakage due to rust-lang/rust#57489
2019-01-20 12:21:30 +02:00
Shotaro Yamada
2ee713dc7b
Catch up with format_args
change
...
Catches up with a change in rust-lang/rust#57537
Happened to fix a bug in `expect_fun_call`, that is the lint ignores more than
one arguments to `format`.
2019-01-19 21:18:31 +09:00
Philipp Hansch
38d4ac7cea
Remove all copyright license headers
...
Discussion previously happened in https://github.com/rust-lang/rust/pull/43498
2019-01-08 21:46:39 +01:00
Matthias Krüger
3389a68834
Revert "Auto merge of #3603 - xfix:random-state-lint, r=phansch"
...
This reverts commit 0a6593cd1b
, reversing
changes made to 5277a1fb6c
.
This hopefully fixes #3628
2019-01-05 10:19:04 +01:00
bors
756b32e1e2
Auto merge of #3623 - phansch:rustup, r=flip1995
...
rustup: https://github.com/rust-lang/rust/pull/55517
None
2019-01-03 22:29:09 +00:00
Philipp Hansch
d1fffe07c5
rustup: https://github.com/rust-lang/rust/pull/55517
2019-01-03 21:54:57 +01:00
John Kåre Alsaker
3af68f831a
Make clippy work with parallel rustc
2019-01-03 19:18:06 +01:00
bors
0a6593cd1b
Auto merge of #3603 - xfix:random-state-lint, r=phansch
...
random_state lint
2019-01-03 02:00:46 +00:00
bors
85ba5f0f17
Auto merge of #3608 - phansch:improve_util_docs, r=oli-obk
...
Some improvements to util documentation
None
2018-12-31 12:03:28 +00:00
Philipp Hansch
cc76384807
Some improvements to util documentation
2018-12-31 12:12:50 +01:00
Max Taldykin
911a752561
Check pattern equality while checking declaration equality
2018-12-30 14:01:56 +03:00
Konrad Borowski
1130bbc26f
Merge branch 'master' of https://github.com/rust-lang/rust-clippy into random-state-lint
2018-12-30 11:43:20 +01:00
Konrad Borowski
a6c4eaa93c
random_state lint
2018-12-30 02:45:34 +01:00
Matthias Krüger
e590025f61
rustup https://github.com/rust-lang/rust/pull/56225/
...
item.name -> item.ident.name
2018-12-30 01:09:24 +01:00
Konrad Borowski
3f62fc3a7e
Remove crate:: prefixes from crate paths
...
This is somewhat misleading, as those are actually external crates,
and don't need a crate:: prefix.
2018-12-29 16:05:49 +01:00
flip1995
909bfd3cd8
Match on ast/hir::ExprKind::Err
2018-12-28 13:31:19 +01:00
Lucas Lois
de42dfbab7
Changes lint sugg to bitwise and operator &
2018-12-17 15:32:24 -03:00
Philipp Hansch
ee2abc36a3
Add 'CamelCase' to doc_valid_idents
2018-12-11 19:37:43 +01:00
bors
ada0b2b095
Auto merge of #3518 - sinkuu:redundant_clone_tw, r=phansch
...
Lint redundant clone of fields
Makes `redundant_clone` warn on unnecessary `foo.field.clone()` sometimes (it can detect an unnecessary clone only if the base of projection, `foo` in this case, is not used at all after that). This is enough for cases like `returns_tuple().0.clone()`.
2018-12-10 18:55:49 +00:00
Shotaro Yamada
109d4b1ab3
Lint redundant clone of projection
2018-12-10 08:48:14 +09:00
Matthias Krüger
273dc82872
run rustfmt
2018-12-09 12:03:10 +01:00
Philipp Hansch
d90cad24a1
Fix c_void false positive caused by libc refactoring
...
The path of `libc::c_void` has changes in 5c1a6b8a6d
The DefId path is now always platform specific like
`libc::windows::c_void`. This fixes our c_void detection to only check
the first and last elements.
2018-12-08 12:05:11 +01:00
Matthias Krüger
f13d23de41
rustup https://github.com/rust-lang/rust/pull/56502 ( .hir -> .hir() )
2018-12-08 12:05:09 +01:00
Philipp A
2fed8d9f1d
typo: emum → enum
2018-12-07 12:24:59 +01:00
Matthias Krüger
45cbdf471d
rustup clippy build with latest rustc
...
(breakage due to 08f8faedd0
)
Fixes #3500
2018-12-06 16:44:22 +01:00
flip1995
1751d2496d
Run rustfmt on clippy_lints
2018-11-27 21:14:15 +01:00
flip1995
4e74eef6e9
Add applicability level to (nearly) every span_lint_and_sugg function
2018-11-27 15:29:23 +01:00
flip1995
3740da203b
Fix bugs and improve documentation
...
Some bugs and some documentation is unrelated to the Applicability change, but
these bugs were serious and the documentation was kind of required to
understand what's going on.
2018-11-27 15:29:23 +01:00
flip1995
9096269610
Add Applicability::Unspecified to span_lint_and_sugg functions
2018-11-27 15:29:23 +01:00
flip1995
fad267c3b3
Introduce snippet_with_applicability and hir_with_applicability functions
2018-11-27 15:29:14 +01:00
Matthias Krüger
ae32c877a5
constants: add u128 i128 builtin types and fix outdated url
2018-11-26 01:12:12 +01:00
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
ff7da3264e
Merge pull request #3447 from phansch/small_rename
...
s/file_map/source_map
2018-11-22 15:08:13 +01:00
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
87ec0580f9
Merge branch 'master' into version_ids
2018-11-22 10:22:25 +01:00
Philipp Hansch
c4b08a5b0c
s/file_map/source_map
2018-11-22 07:53:59 +01:00
Matthias Krüger
f5929e0797
rust-lang-nursery/rust-clippy => rust-lang/rust-clippy
2018-11-22 04:40:09 +01:00
Oliver Scherer
617d861041
Enable rustup clippy to refer to the correct documentation
2018-11-21 13:33:42 +01:00
Matthias Krüger
3a11cd4289
remove unused allow() attributes, NFC
2018-11-17 13:47:46 +01:00
Matthias Krüger
396701613e
rustup https://github.com/rust-lang/rust/pull/55665 (pass contexts by reference)
2018-11-04 22:47:20 +01:00
bors[bot]
7c86a9c05c
Merge #3387
...
3387: Replace big if/else expression with match r=flip1995 a=mikerite
Co-authored-by: Michael Wright <mikerite@lavabit.com>
2018-11-02 07:58:00 +00:00
bors[bot]
c8308c92b6
Merge #3378
...
3378: Fix lint_without_lint_pass r=phansch a=mikerite
Co-authored-by: Michael Wright <mikerite@lavabit.com>
Co-authored-by: flip1995 <hello@philkrones.com>
2018-10-31 07:18:42 +00:00
Michael Wright
4e054ad320
Replace big if/else expression with match
2018-10-31 06:29:38 +02:00
Manish Goregaokar
a06296f836
Rustup to rustc 1.31.0-nightly ( fb2446ad5
2018-10-30)
2018-10-30 04:06:37 +00:00
flip1995
a7fc6799df
Rewrite registered lint collection
2018-10-29 20:44:45 +01:00
Michael Wright
267d5d3433
Fix lint_without_lint_pass
2018-10-29 20:28:06 +01:00
Philipp Hansch
af1548f58f
Don't expand macro in single_match suggestion
2018-10-27 15:47:56 +02:00
Philipp Hansch
aa7bcb9074
Don't expand macro in identity_conversion suggestion
2018-10-27 15:47:56 +02:00
Shotaro Yamada
9a150b4aa1
Use lint_root
2018-10-26 01:16:14 +09:00
Shotaro Yamada
3ca0895920
Add redundant_clone lint
2018-10-26 01:15:55 +09:00
HMPerson1
aabf8083bd
Add lint for calling mem::discriminant
on a non-enum type
2018-10-24 23:39:54 -04:00
Guillem Nieto
fd3651a551
Fix inspector pass documentation
...
When using `#[clippy_dump]`, the compiler complains about an unknown
attribute. The correct one seems to be `#[clippy::dump]`.
2018-10-23 23:03:23 +02:00
Devon Hollowood
dcef9d0795
Fix stutter
lints
2018-10-11 15:42:22 -07:00
Devon Hollowood
9afd8abbe3
Fix similar_names
warnings
...
Most of these are just `#![allow]`ed, because they are things like using
l vs r to differentiate left vs right. These would be made less clear by
taking the advice of `similar_names`
2018-10-11 15:18:58 -07:00
Devon Hollowood
2b9abc5daa
Fix cast_possible_wrap and cast_sign_loss warnings
2018-10-08 22:34:10 -07:00
Devon Hollowood
eef2e8948b
Fix cast_possible_truncation warnings
2018-10-08 21:40:21 -07:00
Philipp Hansch
41e94dd072
Merge pull request #3285 from devonhollowood/pedantic-dogfood-items-after-statements
...
Pedantic dogfood: `items_after_statements`
2018-10-08 06:59:55 +01:00
Devon Hollowood
be983fbf52
Fix items_after_statements for sub-functions
2018-10-07 17:09:32 -07:00
Manish Goregaokar
e9c025ea70
Add license header to Rust files
2018-10-06 09:43:08 -07:00
Manish Goregaokar
cbde8201c5
Remove unused utils
2018-10-05 13:26:39 -07:00
Manish Goregaokar
c430147942
Fix push_item_path call (rustup to 4cf11765dc
)
2018-10-03 02:06:26 -07:00
Michael Wright
c2ee9c29ab
Merge branch 'master' into unnecessary_filter_map
2018-09-29 15:27:47 +02:00
Michael Wright
4b4d758ce0
Fix warnings in clippy_lints
2018-09-27 06:29:48 +02:00
Matthias Krüger
2a31937cc9
fix all clippy::use_self pedantic warnings found in the codebase.
...
cc #3172
2018-09-26 22:24:18 +02:00
Philipp Krones
af2d6a0c14
Merge pull request #3191 from vi/suggest_with_applicability
...
Use span_suggestion_with_applicability instead of span_suggestion
2018-09-23 15:45:55 +02:00
Vitaly _Vi Shukela
3eccccb367
Fix indents
2018-09-20 14:38:48 +02:00
Vitaly _Vi Shukela
d4c994e670
Supplement DiagnosticBuilderExt with Applicability
2018-09-20 14:38:47 +02:00
Vitaly _Vi Shukela
92034e20c8
Use span_suggestion_with_applicability instead of span_suggestion
2018-09-20 14:38:47 +02:00
Jay Kickliter
598df08d88
Add lint for mem::replace(.., None)
.
...
Suggest `Option::take()` as an alternative.
2018-09-19 14:38:34 -07:00
Philipp Hansch
b6707ffc42
Merge pull request #3187 from flip1995/internal_fn
...
New internal lint: compiler_lint_functions
2018-09-19 19:43:48 +01:00
flip1995
a8b681cc2c
Fix c_void path
...
This got changed in rust-lang/rust#53910
2018-09-17 11:20:27 +02:00
flip1995
144281c537
Formatting
2018-09-15 11:02:00 +02:00
flip1995
aaeeaa5330
Add internal lint compiler_lint_functions
2018-09-15 11:01:16 +02:00
Eduard-Mihai Burtescu
9219fc6c5c
Reintroduce extern crate
for non-Cargo dependencies.
2018-09-15 11:10:51 +03:00
Manish Goregaokar
7b530c79b2
Add match on StructCtor
2018-09-14 12:41:20 +05:30
Philipp Hansch
07cb45bc85
Merge pull request #3166 from flip1995/travis_internal
...
Run internal lints on the Clippy code base
2018-09-13 17:22:48 +01:00
Philipp Hansch
e8400061bd
Merge pull request #3085 from mikerite/revert-98dbce
...
Revert "Fix E0502 warnings"
2018-09-13 06:33:26 +01:00
flip1995
e28440d2e0
Change Hash{Map, Set} to FxHash{Map, Set}
2018-09-12 01:34:52 +02:00
flip1995
cfa3c33b1d
Fix lint_without_lint_pass lint
2018-09-12 01:34:04 +02:00
Matthias Krüger
554fe1ed5c
remove "clippy::" lint prefix from lint name in doc url.
...
Fixes #3132
2018-09-06 00:45:57 +02:00
Nick Cameron
4050a68989
Make Default
do what default
used to do
2018-09-04 09:13:48 +12:00
Nick Cameron
d6f01f3a6c
Make Conf::default
available
...
Fixes RLS
2018-09-03 13:57:50 +12:00
Michael Wright
19157c02cb
Fix #3112
2018-09-02 09:38:25 +02:00
Manish Goregaokar
c81d70e6bd
Merge pull request #2977 from flip1995/tool_lints
...
Implement tool_lints
2018-09-01 11:22:23 +05:30
flip1995
f3bb161f0e
Adapt codebase to the tool_lints
2018-08-29 11:08:29 -07:00
flip1995
8c07772dbb
Switch to declare_tool_lint macro
2018-08-29 11:08:29 -07:00
Corey Farwell
d5534ca9db
bring back sugg::range
2018-08-29 07:46:03 -05:00
Corey Farwell
05f637cf88
Make clippy_lints::{utils,consts} modules private, remove unused items.
2018-08-28 21:32:20 -05:00
Oliver Schneider
d99cea0f16
Update imports and rustup
2018-08-28 13:13:42 +02:00
Michael Wright
95fedd2273
Revert "Fix E0502 warnings"
...
This reverts commit 98dbce4fe4
.
The compiler no longer emits the warnings in #2982 with the original
code.
2018-08-26 11:21:22 +02:00
Matthias Krüger
c98987f390
fix clippy breakage due to https://github.com/rust-lang/rust/pull/52602
2018-08-23 21:41:30 +02:00
Matthias Krüger
712d2d4fa1
rustup, fix breakage introduced by https://github.com/rust-lang/rust/pull/53581
2018-08-22 23:34:52 +02:00
Manish Goregaokar
76321d3300
codemap -> source_map
...
https://github.com/rust-lang/rust/pull/52953
2018-08-19 19:06:54 -07:00
Dale Wijnand
22ff5a3ef1
Avoid new_without_default_derive in DefaultHashTypes
2018-08-14 09:25:09 +01:00
Dale Wijnand
1812707d39
Use utils::span_lint_and_sugg in default_hash_types
2018-08-13 11:49:57 +01:00
Dale Wijnand
8fc425b676
Add an internal lint for FxHashMap/FxHashSet
2018-08-12 16:15:36 +01:00
Oliver Schneider
99a087bea5
Update to rustc master
2018-08-08 13:19:07 +02:00
Nick Cameron
b109e10334
Fix build
2018-08-08 18:01:06 +12:00
Oliver Schneider
328fea3e0d
Rustup
2018-08-07 16:34:17 +02:00
Dale Wijnand
1a310bfdf7
Remove #[allow(rust_2018_idioms)] workaround
2018-08-06 17:51:04 +01:00
Alex Crichton
8ef759e027
Fix fallout from rust-lang/rust#52841
2018-08-02 18:08:22 -07:00
Alex Crichton
40349b23ea
Fix breakage from rust-lang/rust#52949
2018-08-02 13:00:14 -07:00
Michael Wright
98dbce4fe4
Fix E0502 warnings
...
Fixes #2982
2018-08-01 06:33:08 +02:00
Matthias Krüger
2665f10662
fix a bunch of typos found by codespell
2018-07-25 20:02:52 +02:00
Dale Wijnand
a1cce2d06a
Inline utils::in_external_macro
2018-07-24 10:38:58 +01:00
Dale Wijnand
b1fa7b91ba
Delegate utils::in_external_macro to rustc::lint::in_external_macro
2018-07-24 10:34:18 +01:00
Oliver Schneider
afd91248ed
Rustup
2018-07-23 13:01:12 +02:00
Manish Goregaokar
1f65617372
Merge branch 'macro-use' into HEAD
2018-07-20 00:52:01 -07:00
Manish Goregaokar
5918a3fc1e
Remove import of if_chain
2018-07-20 00:50:02 -07:00
Alexander Regueiro
4d2c838a32
Update to nightly
2018-07-20 03:59:07 +01:00
Manish Goregaokar
c7676356b8
Remove import of matches
2018-07-19 01:06:02 -07:00
Manish Goregaokar
5d74e2096b
Remove import of rustc
2018-07-19 00:53:23 -07:00
Manish Goregaokar
00ba67a12b
Remove import of lazy_static
2018-07-19 00:11:15 -07:00
Manish Goregaokar
c1745cde82
Remove import of serde
2018-07-19 00:02:08 -07:00
Oliver Schneider
6992937002
Update for hir renamings in rustc
2018-07-16 15:07:39 +02:00
csmoe
8e929946fd
DeclKind
2018-07-16 11:48:33 +02:00
csmoe
8cf463fe93
StmtKind
2018-07-16 11:48:33 +02:00
csmoe
12ded030b6
TyKind
2018-07-16 11:48:33 +02:00
csmoe
5d4102ee78
BinOpKind
2018-07-16 11:46:37 +02:00
csmoe
1bd17e4fa2
ExprKind
2018-07-16 11:46:37 +02:00
Oliver Schneider
1e9f076254
Ignore spans when comparing expressions
2018-07-15 00:00:27 +02:00
Oliver Schneider
141f79f844
Rustup
2018-07-02 19:07:12 +02:00
Oliver Schneider
63041d070b
Rustup
2018-07-01 13:36:14 +02:00
Mateusz Mikuła
48cb6e273e
Rustup
2018-06-29 09:49:05 +02:00