Yati Sagade
240471f926
Needless continue: This is a complete rewrite of this lint as an early-pass lint.
...
The previous version had troubles computing suggestions without macro expansions
creeping in. This fixes it by using original_sp, which works on AST nodes.
2017-04-08 23:30:34 +02:00
Oliver Schneider
c657d603ba
Bump the version
2017-04-07 11:25:00 +02:00
Oliver Schneider
8ae82eb4ab
Merge remote-tracking branch 'origin/master' into 1537-drop_copy
2017-03-24 10:11:46 +01:00
Enrico Schmitz
f8df4aed0f
Fix for rustc 1.17.0-nightly ( 6eb9960d3
2017-03-19)
2017-03-21 00:22:19 +01:00
Oliver Schneider
40d50fe8b2
Don't lint nan_cmp
and zero_ptr
in constants
2017-03-07 12:58:07 +01:00
Tristian Celestin
75e28610a7
Merged drop_forget_ref.rs with drop_forget_copy.rs.
...
Moved constant message strings out of declare_lint! macros.
2017-02-26 21:57:47 -05:00
Tristian Celestin
b8defc6cc4
Warn on calls to std::mem::drop
or std::mem::forget
with a Copy
type
2017-02-25 23:05:37 -05:00
Oliver Schneider
19929790aa
Merge pull request #1561 from Manishearth/zero_ptr
...
New zero_ptr lint.
2017-02-22 13:34:28 +01:00
Oliver Schneider
27aa309b3d
Merge pull request #1556 from sinkuu/take_by_value
...
Lint needless take-by-value
2017-02-21 13:07:25 +01:00
Oliver Schneider
f07f793fa8
Merge pull request #1544 from bood/master
...
Add lint for unnecessary casts (cast to same type)
2017-02-21 09:16:07 +01:00
Andre Bogus
2f7babba82
New zero_ptr lint.
...
This fixes #1047 . I did not bother to add a full suggestion,
because replacing with `std::ptr::null()` may still lead to
inference failures.
2017-02-21 04:36:59 +01:00
sinkuu
0a6bc6031a
Rename lint to needless_take_by_value
...
And fixes false-positives for generics and `match`
2017-02-20 16:02:48 +09:00
sinkuu
d81d961ba7
Lint needless take-by-value
2017-02-19 07:59:44 +09:00
Bood Qian
97d46232b4
Merge branch 'master' of github.com:Manishearth/rust-clippy
2017-02-18 11:12:13 +08:00
sinkuu
16e53c9868
Run update_lints.py
2017-02-18 10:14:20 +09:00
sinkuu
6bb426b0e3
Add should_assert_eq
lint ( fixes #641 )
2017-02-18 10:13:56 +09:00
Andre Bogus
505eb53d29
New never loop lint
...
This lint detects loops that unconditionally break or return.
Closes #257
2017-02-17 04:53:14 +01:00
Bood Qian
2f00ea3a07
Suppress lint for unsuffixed number casts
2017-02-16 22:55:41 +08:00
Bood Qian
afce85e96d
Add lint for unnecessary casts (cast to same type)
2017-02-15 22:20:20 +08:00
Oliver Schneider
40ea5e8c5d
run util/update_lint
2017-02-13 11:40:27 +01:00
Oliver Schneider
637a4590f6
Merge remote-tracking branch 'origin/master'
2017-02-13 11:15:12 +01:00
Andre Bogus
36b8554cf1
add notes for immutable inputs
2017-02-12 13:53:30 +01:00
Bood Qian
a2d752807a
Lint on Err(_)
arm of a match
2017-02-11 14:57:50 +08:00
Andre Bogus
5650a599a8
New mut_from_ref lint
...
This fixes #1507 .
2017-02-10 19:39:03 +01:00
Martin Carton
4ee839857b
Merge pull request #1506 from bood/master
...
Lint for possible missing comma in an array #1177
2017-02-07 18:56:38 +01:00
Owen Sanchez
1193f4fb68
Run update_lints.py
2017-02-04 21:54:21 -07:00
Owen Sanchez
e88e637b67
Add empty_enum lint (just a copy of large_enum_variant for now)
2017-02-04 21:07:54 -07:00
Bood Qian
25fd8c6ba1
Shorten lint name for possible missing comma
2017-02-04 20:05:25 +08:00
Mrmaxmeier
2be75ef973
repeat_str feature has been stablilized
2017-02-03 14:16:14 +01:00
Bood Qian
33577ec3f7
Lint for possible missing comma in an array #1177
2017-02-03 19:10:30 +08:00
Martin Carton
b1be0d6457
Merge pull request #1492 from Manishearth/largeEnumVariant
...
large_enum_variants lint suggests to box variants above a configurable limit
2017-01-31 19:12:43 +01:00
Oliver Schneider
82dd50d0e2
large_enum_variants lint suggests to box variants above a configurable limit
2017-01-30 13:17:56 +01:00
Oliver Schneider
aebdf74e16
correctly check exclusive range patterns for overlap
2017-01-30 12:30:16 +01:00
Tom Prince
a140c3c1bf
Remove unused import.
2017-01-26 15:41:00 -07:00
Oliver Schneider
26e8558d8a
remove rustc-serialize dependency and factor util::cargo
out into a crate
2017-01-26 11:31:26 +01:00
Andre Bogus
2fdb6e4d1a
deprecate extend_from_slice lint
2017-01-14 14:39:41 +01:00
Oliver Schneider
d944d7df9a
rustup to 2017-01-12
2017-01-13 17:04:56 +01:00
sinkuu
ce6e037ac5
Implement unused_io_amount
lint
2017-01-07 22:23:33 +09:00
Theemathas Chirananthavat
e4a4d0c361
Implement the forget_ref lint.
2017-01-05 17:41:01 -08:00
Oliver Schneider
f145fc44f8
Merge pull request #1414 from samueltardieu/no-short-circuit-if
...
Add a new "short_circuit_statement" lint (fixes #1194 )
2017-01-05 10:41:14 +01:00
Manish Goregaokar
e02fac4896
Rustup to rustc 1.16.0-nightly ( 468227129
2017-01-03): Recover patterns from arguments
2017-01-04 15:50:43 -08:00
Josh Holmer
5aea0b2062
Rustup to rustc 1.16.0-nightly ( 468227129
2017-01-03): u128 fixes for rustup
2017-01-04 15:50:34 -08:00
Samuel Tardieu
82b2f5663f
Add a new "short_circuit_statement" lint ( fixes #1194 )
2016-12-31 01:17:39 +01:00
Theemathas Chirananthavat
d76fa3dfd9
Add skeleton for double_parens lint.
2016-12-28 11:21:53 -08:00
Oliver Schneider
90fc9c389f
split pub_enum_variant_names to new lint
2016-12-21 13:30:57 +01:00
Oliver Schneider
49e3419b87
shorten deprecated lints line length
2016-12-21 12:50:39 +01:00
Oliver Schneider
53fc09ec46
autogenerated functions are ignored by rustfmt
2016-12-21 12:40:56 +01:00
Oliver Schneider
009c6d95d7
manually fix the overlong lines
2016-12-21 12:30:41 +01:00
Manish Goregaokar
d61c7fc747
Merge pull request #1355 from philipturnbull/deref-addrof
...
Lint usage of `*&` and `*&mut`
2016-12-19 03:35:45 -08:00
Oliver Schneider
c6e2967b9c
rustup to rustc 1.15.0-dev (3b248a184 2016-12-05)
2016-12-06 11:32:21 +01:00
Oliver Schneider
59b0077565
WIP compiles and doesn't crash (much) but tests are failing
2016-12-01 22:31:56 +01:00
Phil Turnbull
0ee6128e27
Convert DEREF_ADDROF to EarlyLintPass
2016-11-25 10:33:21 -05:00
Phil Turnbull
a9f5b90f0f
Lint usage of *&
and *&mut
...
fixes #1316
2016-11-22 21:06:20 -05:00
Phil Turnbull
fa78b09fa7
Add lint for string.extend("str".chars())
...
fixes #792
2016-11-19 14:55:02 -05:00
mcarton
19c5f5394b
Rustup to rustc 1.15.0-nightly ( 0ed951993
2016-11-14)
2016-11-16 23:05:26 +01:00
Devon Hollowood
cfc741405b
Run update_lints.py
2016-10-31 23:43:19 -07:00
Oliver Schneider
053896b678
Merge pull request #1307 from Kha/partialeq_ne
...
Implement 'Re-implementing `PartialEq::ne`' lint
2016-10-31 09:06:14 -04:00
Sebastian Ullrich
8664d03ec6
implement 'Re-implementing PartialEq::ne
' lint
...
closes #86
2016-10-30 15:00:59 -04:00
Oliver Schneider
8b2e80b47b
Merge pull request #1299 from Manishearth/clippy-toml
...
Search for `clippy.toml` recursively
2016-10-30 14:35:32 -04:00
d-dorazio
d213040381
Add lint for redundant pattern matching in iflet for Result/Option
2016-10-30 15:43:46 +01:00
mcarton
d52af53e04
Search for clippy.toml
recursively
2016-10-25 19:41:24 +02:00
Oliver Schneider
1248159f0d
add expression and pattern dump
2016-10-24 14:28:58 +02:00
Oliver Schneider
ff3efc759e
initial implementation of the code inspector lint
2016-10-18 16:57:39 +02:00
mcarton
4cf87a9d49
Remove the now stable #[feature(question_mark)]
2016-10-16 14:01:55 +02:00
d-dorazio
62831c6e29
Suggest nth(X)
instead of skip(X).next()
2016-10-14 13:38:00 +02:00
mcarton
fc09eb553e
Fix dogfood problem
2016-10-06 17:50:11 +02:00
Martin Carton
e851bc7404
Merge pull request #1257 from KitFreddura/master
...
If let some lint
2016-10-04 23:00:05 +02:00
Kit Freddura
ab9435a6d4
ran update
2016-10-02 13:42:11 -07:00
Kit Freddura
1c15428339
removed formatting changes
2016-10-02 13:39:28 -07:00
Andre Bogus
8188c46429
Allow option_map_unwrap_or(_else)
...
This fixes #1192 .
2016-10-02 21:23:26 +02:00
Elliott Clark
4a34087c77
Run util/update_lints.py after adding explicit_into_iter_loop
2016-09-30 17:50:02 -07:00
Martin Carton
dc84759ac5
Merge pull request #1224 from oli-obk/divergence
...
lint diverging expressions that are sub-expressions of others
2016-09-13 15:58:31 +02:00
Oliver Schneider
f469860dc2
lint diverging expressions that are sub-expressions of others
2016-09-12 14:24:11 +02:00
Oliver Schneider
03fa974855
Let the submodule #[allow]
in module_inception
2016-09-12 10:30:42 +02:00
kennytm
5f09020e90
Added a lint_without_lint_pass lint.
...
Four lints were missing from LintPass, making them unavailable unless the
`clippy` lint group is explicitly enabled:
* `for_loop_over_result`
* `for_loop_over_option`
* `match_overlapping_arm`
* `filter_next`
2016-09-01 15:07:37 +08:00
mcarton
d87f137254
Add a builtin_type_shadow
lint
2016-08-28 19:56:18 +02:00
mcarton
e338f6a4f0
Remove now useless attribute type_macros
2016-08-28 17:24:34 +02:00
Andre Bogus
06235b0310
refactored misc to reduce passes
...
related to #1062
Before: 960MB After: 956MB
So while this reduces code size somewhat, I don't see much memory
improvement here. Still, it's probably worthwile to consider reducing
our passes at least within modules.
2016-08-24 21:47:46 +02:00
mcarton
36d8ca04a1
Add a MISSING_DOCS_IN_PRIVATE_ITEMS
lint
2016-08-23 18:28:39 +02:00
mcarton
507b626b36
Add zero_prefixed_literal
lint
2016-08-23 18:15:12 +02:00
llogiq
cf2b0c8dd6
New cmp_null lint ( fixes #1184 ) ( #1186 )
...
* new cmp_null lint (fixes #1184 )
* adressed comments (still fails)
* fixed tests, dogfood, ran update_lints
2016-08-22 18:29:29 +02:00
Oliver Schneider
3ab6ad59c4
disallow lint attributes on use
and extern crate
items
2016-08-17 11:36:04 +02:00
Georg Brandl
ffad9a8c8c
Lint print!("...\n") ( closes #455 )
2016-08-16 20:52:48 +02:00
Oliver Schneider
7ee4a9a659
lint modules that have the same name as their parent module
2016-08-16 14:29:21 +02:00
scurest
b0a96def09
Add lint for reads and writes that depend on evaluation order
2016-08-11 06:01:40 -05:00
Georg Brandl
bc2ecc9623
INDEXING_SLICING should probably be a restriction lint.
2016-08-07 08:05:37 +02:00
Manish Goregaokar
74c7880597
Merge pull request #1145 from birkenfeld/issue-703-2
...
Lint literal suffixes not separated by underscores (idea also from #703 )
2016-08-07 09:57:16 +05:30
Georg Brandl
fa0df69a97
Add a configurable threshold for enum variants before name lints trigger ( fixes #1138 )
2016-08-06 20:59:27 +02:00
Georg Brandl
2f8247ada5
Lint literal suffixes not separated by underscores (see #703 )
2016-08-05 18:50:23 +02:00
Georg Brandl
ab58331f22
Lint inconsistent casing in hex literals ( closes #703 )
2016-08-05 18:30:49 +02:00
Oliver Schneider
81c5757f44
lint on by ref patterns for references
2016-08-01 16:59:14 +02:00
Oliver Schneider
f7f9930b89
update lints
2016-07-20 17:34:58 +02:00
llogiq
a371558bdb
Merge pull request #1093 from oli-obk/serde_specific_lint
...
lint on implementing `visit_string` without also implementing `visit_str`
2016-07-18 11:53:28 +02:00
Oliver Schneider
02c46f057f
add an internal lint that catches misordered paths
2016-07-18 11:19:33 +02:00
Oliver Schneider
319c66a2a4
lint on implementing visit_string
without also implementing visit_str
2016-07-12 17:36:11 +02:00
Manish Goregaokar
e63b8342c3
Remove unnecessary feature
2016-07-12 20:21:45 +05:30
Manish Goregaokar
c1421c6e82
Don't warn when boxing large arrays
2016-07-12 18:49:34 +05:30
mcarton
02547b9392
Merge remote-tracking branch 'origin/master' into sugg
2016-07-06 14:54:10 +02:00
mcarton
3bd0acaa5c
Remove useless feature attribute
...
`iter_arith` has been stabilized in rustc 1.11.0.
2016-07-06 14:51:20 +02:00
mcarton
7778f314f2
Merge branch 'master' into sugg
2016-07-04 00:51:19 +02:00
mcarton
7781f1d7c5
Add a new not_unsafe_ptr_arg_deref
lint
2016-07-03 13:28:34 +05:30
mcarton
e613c8b492
Introduce multispan_sugg
2016-07-01 18:43:42 +02:00
mcarton
d6182b365c
Merge remote-tracking branch 'origin/rustup' into sugg
2016-07-01 17:48:57 +02:00
mcarton
9811dea237
Add a module to pretty-print suggestions
2016-07-01 17:12:48 +02:00
Andre Bogus
a12e8394d7
new lint: double_neg
2016-06-30 01:00:25 +02:00
mcarton
f37c9adbd9
Make CollapsibleIf
an EarlyLintPass
...
It doesn't need any `hir` feature and `ast` is much more stable.
2016-06-29 17:09:39 +02:00
Oliver Schneider
e06bc37477
lint on unnecessary and plain wrong transmutes
2016-06-28 14:08:08 +02:00
Oliver Schneider
5ccbf3d437
unify the lints
2016-06-22 10:44:46 +02:00
Oliver Schneider
77e2155778
update lints
2016-06-21 13:32:34 +02:00
Oliver 'ker' Schneider
e628e4d513
allow by default
2016-06-16 18:37:56 +02:00
Oliver Schneider
4701f13551
round 1
2016-06-16 12:20:05 +02:00
Devon Hollowood
74025be59d
Make iter_nth work for Vec
s too
2016-06-16 02:04:32 -07:00
Devon Hollowood
7764dc5ef4
Add slice_iter_nth lint
2016-06-16 01:36:11 -07:00
mcarton
489576437d
Cleanup dependencies and features
2016-06-10 00:09:17 +02:00
mcarton
9f70d04000
Fix wrong suggestion with MANUAL_SWAP
and slices
2016-06-05 20:19:00 +02:00
Oliver Schneider
80e81d351d
add version check to the unit tests
2016-05-30 12:47:04 +02:00
mcarton
42879bcdcb
Add a USELESS_LET_IF_SEQ
lint
2016-05-29 12:19:12 +02:00
Oliver Schneider
bf227f4729
split clippy into lints, plugin and cargo-clippy
2016-05-27 13:03:58 +02:00