Commit graph

435 commits

Author SHA1 Message Date
Theemathas Chirananthavat
d76fa3dfd9 Add skeleton for double_parens lint. 2016-12-28 11:21:53 -08:00
Martin Carton
96d2483b09 Merge pull request #1400 from oli-obk/needed_needless_lifetime
support impl trait for needless lifetimes
2016-12-25 18:24:39 +01:00
Oliver Schneider
ba59ba3afc fix rustfmt 2016-12-25 17:49:39 +01:00
Martin Carton
7c480d0db7 Merge pull request #1394 from Manishearth/absurd_extreme_comparisons_false_positive
fix absurd extreme comparisons false positive
2016-12-25 17:47:42 +01:00
Oliver Schneider
93333f0d7b
support impl trait for needless lifetimes 2016-12-22 15:51:59 +01:00
Oliver Schneider
2f219b827e
fix an ice related to associated types
fixes #1341
2016-12-22 14:16:07 +01:00
Oliver Schneider
0b10a41ef3
fix absurd extreme comparisons false positive
fixes #1387
2016-12-21 16:49:53 +01:00
Oliver Schneider
7a1d85f1de Merge branch 'master' into allow_deprecated 2016-12-21 15:47:12 +01:00
Oliver Schneider
00a3bfb8eb
Don’t warn for types used in trait implementation 2016-12-21 15:42:20 +01: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
Oliver Schneider
47eead5ada
function definition style simplification 2016-12-21 12:14:54 +01:00
Oliver Schneider
ed9d71f2c9
remove nondeterminism by adjusting thresholds 2016-12-21 10:25:14 +01:00
Oliver Schneider
299d7be132
rustfmt fallout in doc comments 2016-12-21 10:00:13 +01:00
Oliver Schneider
44533f09aa
rustfmt round n 2016-12-21 09:45:24 +01:00
Oliver Schneider
4a4e1ea2c5
also run rustfmt on clippy-lints 2016-12-20 18:21:30 +01:00
mcarton
7dd3679ac3
Fix a couple warnings 2016-12-19 20:31:39 +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
5aded99033
don't lint on x = x + y inside an AddAssign impl
fixes #1302
2016-12-19 11:13:07 +01:00
Arnavion
3de6f9db20 Use inputs/output getters for rustc::ty::FnSig instead of the now non-existent fields. 2016-12-10 23:57:19 -08:00
Oliver Schneider
778ce4dfd3
update to the rust-PR that unblocks clippy 2016-12-07 13:13:40 +01:00
Oliver Schneider
c6e2967b9c
rustup to rustc 1.15.0-dev (3b248a184 2016-12-05) 2016-12-06 11:32:21 +01:00
mcarton
1ba8ed96cf
Fix dogfood 2016-12-02 22:33:16 +01:00
mcarton
65ff2df7e7
Fix copy lints 2016-12-02 22:23:24 +01:00
mcarton
fe15880beb Revert "down to for-loops not comparing as equal"
This reverts commit cf1fa94be1.
2016-12-02 20:54:05 +01:00
Oliver Schneider
8e1f6dce40 enum detection by style convention 2016-12-02 19:30:00 +01:00
Oliver Schneider
ff2487b30e permit more equalities 2016-12-02 19:23:30 +01:00
Oliver Schneider
cf1fa94be1 down to for-loops not comparing as equal 2016-12-02 19:19:52 +01:00
Oliver Schneider
16aab71688
enum glob use and copies left 2016-12-02 17:38:31 +01:00
Wim Looman
919feaaec5 Allow allow(deprecated) attribute on use items
fixes #1372
2016-12-01 22:36:35 +01:00
Oliver Schneider
59b0077565 WIP compiles and doesn't crash (much) but tests are failing 2016-12-01 22:31:56 +01:00
Oliver Schneider
31e482403c rustup to rustc 1.15.0-nightly (d5814b03e 2016-11-23) 2016-11-25 19:24:55 +01:00
Phil Turnbull
0ee6128e27 Convert DEREF_ADDROF to EarlyLintPass 2016-11-25 10:33:21 -05:00
Martin Carton
11ca07c8ad Merge pull request #1360 from Manishearth/rustup
Rustup to *rustc 1.15.0-nightly (3bf2be9ce 2016-11-22)* and bump to 0.0.102
2016-11-24 18:12:20 +01:00
Oliver Schneider
9717b9585d Merge pull request #1363 from hdhoang/patch-2
useless_format: fix typo
2016-11-24 11:20:52 +01:00
Hoàng Đức Hiếu
f5ccc2fe6f useless_format: fix typo 2016-11-24 16:10:22 +07:00
Hoàng Đức Hiếu
4215292793 let_if_seq: fix rewrite example 2016-11-24 16:09:09 +07:00
mcarton
c7e3cc1e27
Rustup to *rustc 1.15.0-nightly (3bf2be9ce 2016-11-22)* 2016-11-23 22:44:00 +01:00
mcarton
c35f82b823
Rustup to *rustc 1.15.0-nightly (7b3eeea22 2016-11-21)* 2016-11-23 21:31:55 +01:00
Phil Turnbull
a9f5b90f0f Lint usage of *& and *&mut
fixes #1316
2016-11-22 21:06:20 -05:00
Martin Carton
530083c3b9 Merge pull request #1349 from philipturnbull/extend-chars
Lint `.extend(s.chars())` (closes #792)
2016-11-22 18:21:30 +01:00
Phil Turnbull
8705f3d11c Remove mention of .push_str(s) being faster
For the `.push_str(str.chars())` case the compiler will inline `push_str` and
call `extend_from_slice` on the underlying vector, so this isn't actually
faster.
2016-11-20 17:28:14 -05:00
Phil Turnbull
e9f3911899 Suggest &s instead of s.as_str() 2016-11-20 11:19:36 -05:00
sinkuu
5d40965b50 Fix #1346 2016-11-20 10:15:40 +09:00
sinkuu
1973e94550 Allow explicit returns with cfg attributes 2016-11-20 10:02:41 +09:00
mcarton
be799bc085
Rustup to *rustc 1.15.0-nightly (ac635aa95 2016-11-18)* 2016-11-20 00:13:08 +01:00
Phil Turnbull
73a73638c0 Add lint for string.extend(string.chars())
fixes #792
2016-11-19 14:55:47 -05:00
Phil Turnbull
fa78b09fa7 Add lint for string.extend("str".chars())
fixes #792
2016-11-19 14:55:02 -05:00
Phil Turnbull
0ab7e6c598 Factor out lint_vec_extend 2016-11-19 14:44:32 -05:00
mcarton
7140eac484 Cleanup 2016-11-18 13:40:44 +01:00
Oliver Schneider
f39c6278e1
fix the inspector 2016-11-18 13:21:07 +01:00
mcarton
945c027768
Handle closure with single expression blocks 2016-11-17 19:44:18 +01:00
mcarton
19c5f5394b
Rustup to rustc 1.15.0-nightly (0ed951993 2016-11-14) 2016-11-16 23:05:26 +01:00
Sébastien Santoro
0e6807e86b Recognize quux as a metasyntactic variable
quux is another metasyntactic variable like foo and so
should be detected by the blacklisted names linter.
2016-11-11 05:57:29 +01:00
Oliver 'ker' Schneider
cfae1e9fda fix ice in len_zero lint when type has no inherent impls at all
fixes #1336
2016-11-10 17:06:39 +01:00
Oliver Schneider
a260e65ead Merge pull request #1312 from devonhollowood/get-unwrap
Implement `get_unwrap` lint
2016-11-09 09:49:20 +01:00
Devon Hollowood
e94a4d4666 Fix suggestion in get_unwrap lint 2016-11-02 11:48:16 -07:00
Oliver Schneider
a56af73fd8
mark cyclomatic complexity attribute as used
fixes #1315
2016-11-02 10:29:57 +01:00
Devon Hollowood
6a14dc7fd4 Remove false positives from get_unwrap lint
HashMap and BTreeMap don't implement `IndexMut`, so we shouldn't lint
for use of `get_mut().unwrap()` for those types.
2016-11-01 17:48:32 -07:00
Devon Hollowood
4e0d182d1d Clean up get_unwrap code 2016-11-01 17:48:18 -07:00
Devon Hollowood
c5e270a1aa Small fixes for get_unwrap lint 2016-11-01 01:08:38 -07:00
Devon Hollowood
cfc741405b Run update_lints.py 2016-10-31 23:43:19 -07:00
Devon Hollowood
0680ac3562 Add get_unwrap lint 2016-10-31 23:42:33 -07:00
Gibson Fahnestock
c40466e1c2 Add to docs for if_let_some_result 2016-10-31 22:55:22 +00: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
9314965af0 inspector: fix printing non-local trait refs 2016-10-30 15:00:59 -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
Sebastian Ullrich
90f71be4e9 factor out is_automatically_derived util fn 2016-10-30 14:25:06 -04:00
d-dorazio
d213040381 Add lint for redundant pattern matching in iflet for Result/Option 2016-10-30 15:43:46 +01:00
Devon Hollowood
3a0d342a33 Fix false positive for wrong_self_convention 2016-10-27 01:11:34 -07:00
mcarton
d52af53e04
Search for clippy.toml recursively 2016-10-25 19:41:24 +02:00
Oliver Schneider
233459ea33
clean up docs for clippy_dump 2016-10-24 16:30:22 +02:00
Oliver Schneider
34deb72c36
properly name the docs 2016-10-24 15:43:37 +02:00
Oliver Schneider
ed50cb133d
dogfood 2016-10-24 15:16:21 +02:00
Oliver Schneider
6a6dfa59da
factor out decl dumping 2016-10-24 14:29:09 +02:00
Oliver Schneider
1248159f0d
add expression and pattern dump 2016-10-24 14:28:58 +02:00
Oliver Schneider
f29ab8c245
Merge branch 'master' of github.com:Manishearth/rust-clippy into deep_code_inspection 2016-10-24 10:39:19 +02:00
Arnavion
2315a817ce Changed signature of cargo::metadata according to review comment. 2016-10-23 12:24:16 -07:00
Arnavion
ebbd00b1ab Don't assume the first package in the result of cargo metadata is the current crate.
Instead find the one with the manifest path that matches the --manifest-path argument or the current directory.

Fixes #1247
2016-10-22 18:15:42 -07:00
mcarton
6960c506ef
Fix unused import warning 2016-10-22 16:16:38 +02:00
mcarton
1c3fce41b6
Rustup to *rustc 1.14.0-nightly (f09420685 2016-10-20)* 2016-10-22 15:57:19 +02:00
Oliver Schneider
a177d85681
rename inspection attribute to clippy_dump 2016-10-18 17:29:01 +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
Patrick Horlebein
4fbd8906e1 doc_markdown: Added "iOS" and "macOS" to the doc-valid-idents list 2016-10-12 15:32:44 +02:00
d-dorazio
a4d4a372e0 Avoid redundant multiple pattern suggested when one pattern is _ 2016-10-08 16:29:19 +02:00
mcarton
47c2271497
Fix FP with print_with_newline and final arguments 2016-10-06 22:30:03 +02:00
mcarton
fc09eb553e
Fix dogfood problem 2016-10-06 17:50:11 +02:00
mcarton
0475eae1fa
Rustup to *rustc 1.14.0-nightly (3210fd5c2 2016-10-05)* 2016-10-06 17:46:50 +02:00
Martin Carton
e851bc7404 Merge pull request #1257 from KitFreddura/master
If let some lint
2016-10-04 23:00:05 +02:00
mcarton
2b8500664c
Remove warning in the lastest nightly 2016-10-04 17:17:40 +02:00
mcarton
4f91d66905 Rustup to *rustc 1.14.0-nightly (144af3e97 2016-10-02)* 2016-10-03 21:25:27 +02:00
Manish Goregaokar
a4198c1108 Merge pull request #1255 from Manishearth/cov
Improve test coverage
2016-10-03 22:15:23 +05:30
Kit Freddura
c8aa35e150 replaced snippet_opt with snippet for more terse code 2016-10-02 14:38:31 -07:00
Kit Freddura
97e9299a10 fixed array bounds checking 2016-10-02 14:26:41 -07:00
Kit Freddura
3573114764 replaced pat_to_string with snippet 2016-10-02 14:15:24 -07:00
Kit Freddura
1188f59102 fixed struct elison 2016-10-02 13:53:10 -07:00
Kit Freddura
c18dc13f6e added file again 2016-10-02 13:48:52 -07:00
Kit Freddura
d152ca04bd updated zero_div_zero.rs 2016-10-02 13:44:23 -07: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
mcarton
d982b19a0e
Fix slightly wrong comment 2016-10-02 14:30:21 +02:00
mcarton
f03bac6c3a
Remove a useless method 2016-10-02 02:47:53 +02:00
mcarton
e50cfa7e77
Add a test for a shadow corner case 2016-10-02 02:38:54 +02:00
mcarton
9a3f53dee6
Partially hash let declaration in SpanlessHash
The hash never needs to be good but before it was simply doing nothing
for these.
2016-10-02 02:17:04 +02:00
mcarton
e036a8145a
Support ExprType (type ascription) comparison
*ish
2016-10-01 22:26:57 +02:00
mcarton
3e009b9424
Implement more hir typed node comparison 2016-10-01 22:19:20 +02:00
Martin Carton
8babb2d409 Merge pull request #1250 from elliottneilclark/explicit_into_iter
Add a lint to warn about un-necessary .into_iter()
2016-10-01 15:01:43 +02:00
Oliver Schneider
9c5d3f3b85 correctly traverse match expressions for diverging_sub_expr 2016-10-01 14:41:20 +02:00
Elliott Clark
4a34087c77 Run util/update_lints.py after adding explicit_into_iter_loop 2016-09-30 17:50:02 -07:00
Elliott Clark
5fa004313b Add a lint to warn about un-necessary .into_iter()
This should close #1094.
2016-09-30 17:42:43 -07:00
mcarton
4f3920307a
Rustup to *rustc 1.13.0-nightly (d0623cf7b 2016-09-26)* 2016-09-28 01:09:11 +02:00
mcarton
f74dcaac0c
Fix wrong suggestion in TRANSMUTE_PTR_TO_REF with lts 2016-09-19 17:59:12 +02:00
mcarton
5f1120b346
Fix markup in SINGLE_CHAR_PATTERN documentation 2016-09-18 18:27:08 +02:00
Takuma YOSHIOKA
7b6a60ca69
Fix typo in example codes of "matches" lints
Use `=>` for match arms (instead of wrong `->`).
2016-09-18 20:17:25 +09:00
mcarton
c8986b4676
Fix FP with WHILE_LET_ON_ITERATOR and refutable pats 2016-09-16 15:50:35 +02:00
mcarton
90c390ec2a
Fix typo
Who cares? Meh, consistency.
2016-09-16 15:45:19 +02: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
e6bfe4b514
also lint diverging methods 2016-09-13 12:41:37 +02:00
Oliver Schneider
a2257280ec
don't lint expressions referencing ! objects, just expressions creating them 2016-09-13 12:41:20 +02:00
Oliver Schneider
12a82b2007
also lint private modules for module_inception, as that is the main issue 2016-09-13 10:19:55 +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
mcarton
ab6669a641
Rustup to *rustc 1.13.0-nightly (f1f40f850 2016-09-09)* 2016-09-10 19:13:49 +02:00
mcarton
b82f43f38e
Revert "Remove all union stuffs"
This reverts commit 888c34ad70.
This rustups to rustc 1.13.0-nightly (70598e04f 2016-09-03).
2016-09-04 17:45:36 +02:00
mcarton
b2de244cfd
Restrict len_without_is_empty to exported items 2016-09-02 15:30:06 +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
888c34ad70
Remove all union stuffs
The rustc's PR wasn't merged. Hopefully this commit can simply be reverted when it's time.
2016-08-31 18:22:36 +02:00
mcarton
01424f5622
Support unions here and there 2016-08-31 18:22:36 +02:00
mcarton
3f43996aa5
Rustup to *1.13.0-nightly (eac41469d 2016-08-30)* 2016-08-31 18:22:35 +02:00
mcarton
d87f137254
Add a builtin_type_shadow lint 2016-08-28 19:56:18 +02:00
mcarton
e922fa80ce
Fix FP in ZERO_PREFIXED_LITERAL and 0b/Oo 2016-08-28 18:00:09 +02:00
mcarton
189c5e5cfc
Rustup to rustc 1.13.0-nightly (a23064af5 2016-08-27) 2016-08-28 17:25:58 +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
ddf84ea845
Fix typos 2016-08-24 14:37:09 +02:00
mcarton
be329ebdf7
Typo
TIL what `wether` means.
2016-08-23 19:51:42 +02:00
mcarton
9a2aadf872
Deny missing_docs_in_private_items in some modules 2016-08-23 19:39:36 +02:00
mcarton
8b12e28e43
in_macro check in MISSING_DOCS_IN_PRIVATE_ITEMS 2016-08-23 19:00:56 +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
14d2cd0b0a
unused_import is a valid lint to be changed on use statements 2016-08-19 17:27:24 +02:00
Oliver Schneider
2d57902a27
don't lint if snippet is shortert than 1 character
This happens with various combinations of cfg attributes and macros expansion.
Not linting here is the safe route, as everything else might produce false positives.
2016-08-19 17:27:24 +02:00
Georg Brandl
ff919376a6 rustup 2016-08-18 21:24:35 +02:00