Commit Graph

1119 Commits

Author SHA1 Message Date
Manish Goregaokar
1f81dcbebd
Pass null borrow context to EUV 2017-10-19 09:27:58 -07:00
sinkuu
b4ea47d23e Detect proc-macro in needless_pass_by_value
Fixes #1876
2017-10-18 07:33:22 +09:00
clippered
dfa4cb7ade Fix #2123 : check that the source and destination are different for manual memcpy 2017-10-18 07:06:01 +11:00
Oliver Schneider
f01e45faa4 Merge pull request #2131 from devonhollowood/suggest-print
Suggest print
2017-10-17 15:26:41 +02:00
Oliver Schneider
343e438f9d Merge pull request #2120 from sinkuu/implicit_hasher
Implicit hasher lint
2017-10-17 15:24:20 +02:00
sinkuu
eea30777dd Type parameter change and type change are now in a multispan suggestion 2017-10-17 21:40:46 +09:00
sinkuu
a4f45e85b1 Use cx.access_levels.exported() instead of visibility 2017-10-17 21:13:17 +09:00
Sunjay Varma
da14435ed2 Updated clippy to account for changes from rust-lang/rust#44766 2017-10-15 15:39:47 -04:00
Yury Krivopalov
7b16f4d7ff Clarify message for erasing_op lint 2017-10-15 10:32:47 +03:00
Yury Krivopalov
a5d2bfebc4 Simplify checking for all ones in int 2017-10-15 10:21:56 +03:00
Devon Hollowood
2842038627 Improve lint description 2017-10-14 21:46:19 -03:00
Devon Hollowood
eda013d3af Change lint filename
suggest_print.rs -> explicit_write.rs
2017-10-14 21:42:14 -03:00
Devon Hollowood
aeeb38dab1 Change lint name
From `suggest_print` to `explicit_write`
2017-10-14 21:26:50 -03:00
Yury Krivopalov
033c99b1ba Add erasing_op lint
For expressions that can be replaced by a zero.
2017-10-14 12:34:37 +03:00
Yury Krivopalov
f68e408cb6 identity_op lint fix for '&' with unsigned types 2017-10-14 12:21:23 +03:00
sinkuu
c3332ca92e Fix panic with fake Range type 2017-10-13 21:51:57 +09:00
Devon Hollowood
a46bf3f456 Clarify lint description 2017-10-12 05:54:33 -03:00
Devon Hollowood
e31a0941e2 Fix output for write macros 2017-10-12 05:53:20 -03:00
Devon Hollowood
4105593eee Run rustfmt 2017-10-12 05:35:13 -03:00
Devon Hollowood
888076b698 Add suggest_print lint 2017-10-12 05:30:35 -03:00
sinkuu
31f16b87b7 Use rustc_typeck::hir_ty_to_ty 2017-10-11 23:08:36 +09:00
sinkuu
5a61d88fa1 Apply suggestions 2017-10-11 22:17:00 +09:00
Oliver Schneider
f0aa2c1587 Merge pull request #2127 from rust-lang-nursery/enum_variant_names_fp
Don't lint accidental "prefixes" on enum variants
2017-10-11 13:16:59 +02:00
Oliver Schneider
58002b0e37 Merge pull request #2119 from camsteffen/never_loop
Another never_loop fix
2017-10-11 08:21:28 +02:00
sinkuu
159cc8413c Add implicit_hasher lint (#2101) 2017-10-11 12:10:26 +09:00
Cameron Steffen
752900ca3b change expect message 2017-10-10 16:30:10 -05:00
Lukas Stevens
4438c41d14 Make suggested changes
- Fix copy-paste error
- Check for opt.map_or argument after ensuring that opt is an Option
- Use span_lint_and_then and span_suggestion
- Update reference
2017-10-10 15:35:24 +02:00
Lukas Stevens
c0fac7cf56 Remove unnecessary borrow 2017-10-10 14:04:41 +02:00
Lukas Stevens
eb53cca768 Add lint for opt.map_or(None, f)
Change to Warn and add multiline support

Fix typo

Update reference
2017-10-10 13:37:45 +02:00
Oliver Schneider
af6e2a1e4e
Don't lint accidental "prefixes" on enum variants 2017-10-10 12:37:59 +02:00
Oliver Schneider
28c401f9db Merge pull request #2118 from chyvonomys/relax-needless-loop
relax `needless_range_loop` so that it reports only direct indexing
2017-10-10 09:37:51 +02:00
Cameron Steffen
9ccb7108b5 fix never_loop 2017-10-08 17:26:39 -05:00
Cameron Steffen
533a50547f remove contains_continue functions 2017-10-08 17:24:32 -05:00
Oliver Schneider
73a1dd8e7f Merge pull request #2117 from sinkuu/improve_take_by_value
Improve needless_pass_by_value
2017-10-08 20:14:55 +02:00
Andriy S. from cobalt
52bd7bb662 relax needless_range_loop so that it reports only direct indexing 2017-10-08 18:34:31 +03:00
sinkuu
8ffec33fd3 Remove intermediate vec 2017-10-08 20:17:04 +09:00
Niklas Fiekas
e9be7530c6 Allow range_plus_one while ..= ranges are unstable 2017-10-08 12:51:00 +02:00
Niklas Fiekas
d8e01237e2 Lint range_plus_one and range_minus_one (closes #329) 2017-10-08 12:51:00 +02:00
Oliver Schneider
a54baad4fa Merge pull request #2112 from topecongiro/issue-2109
Add a suggestion to replace `map(f).unwrap_or(None)` with `and_then(f)`.
2017-10-08 11:51:15 +02:00
sinkuu
fdc9a649ff Exclude Fn traits 2017-10-08 18:04:45 +09:00
sinkuu
2be6245179 Duplicate ptr_arg's suggestion logic 2017-10-08 17:51:44 +09:00
sinkuu
bf97cd0338 Reduce false-positives for needless_pass_by_value lint
Excluding a type whose reference also fulfills the trait bound.
2017-10-08 17:25:56 +09:00
Chris Emerson
fcdce8fc1d Merge branch 'master' into no_effect_with_drop 2017-10-07 23:24:36 +01:00
Seiichi Uchida
63d6df2101 Add a comment that explains about comparing snippet to raw text 2017-10-07 00:12:30 +09:00
Seiichi Uchida
f5c941a404 Update OPTION_MAP_UNWRAP_OR lint
Add a suggestion to replace `map(f).unwrap_or(None)` with `and_then(f)`.
2017-10-06 22:06:47 +09:00
Cameron Steffen
d92d5a8811 fix never_loop 2017-10-06 00:04:39 -05:00
sinkuu
771d2220d2 Add identity_conversion lint (fixes #1051) 2017-10-04 22:16:16 +09:00
PizzaIter
47df717229 Add lints transmute_int_to_* 2017-10-03 14:27:42 +02:00
Oliver Schneider
ebc9891fc6 Merge pull request #1838 from rust-lang-nursery/fix-doc
Don't lint autolinks in `doc_markdown`
2017-09-30 17:10:09 +02:00
mcarton
aca6c1e065 Have a separate message for raw URLs in doc 2017-09-30 14:59:22 +02:00
mcarton
b10610cdeb Add the url crate as a dependency 2017-09-30 14:53:22 +02:00
mcarton
e40c270d4f Don't lint autolinks in doc_markdown 2017-09-30 14:46:55 +02:00
Laura Peskin
8e6abc6fd7 alphabetize paths to pass dogfood 2017-09-29 21:48:10 -04:00
Laura Peskin
ddad5e0f86 add tests for false positives 2017-09-29 21:01:11 -04:00
Laura Peskin
f3e51d8d65 add lint for creation of invalid references 2017-09-29 21:01:10 -04:00
mcarton
7e956ac7c4 Fix regression with print! 2017-09-29 19:13:21 +02:00
mcarton
cae9cedeb5 Fix regression with format! 2017-09-29 18:36:03 +02:00
Oliver Schneider
bc76f397c6 Merge pull request #2084 from ykrivopalov/bit_mask_verbosity_threshold
Configuration option for VERBOSE_BIT_MASK threshold
2017-09-29 08:49:27 +02:00
Manish Goregaokar
201b5c2f24 Use ..= in the suggestion 2017-09-28 10:40:36 -07:00
Manish Goregaokar
0ca166277c Rust upgrade to rustc 1.22.0-nightly (0e6f4cf51 2017-09-27) 2017-09-28 07:11:34 -07:00
Yury Krivopalov
5c56c924fc Clarify verbose_bit_mask_threshold description 2017-09-27 10:31:39 +03:00
Manish Goregaokar
387efd459c
Merge branch 'pr-1945' 2017-09-25 20:11:10 -07:00
Manish Goregaokar
bebc99d893 Run prepublish script 2017-09-25 19:54:24 -07:00
Manish Goregaokar
66eea5e662
Fix dogfood needless-borrow 2017-09-25 19:52:30 -07:00
Manish Goregaokar
1b4aba47b7
Fix dogfood filter-map 2017-09-25 19:52:30 -07:00
Manish Goregaokar
2551bd8924
Reduce cyclomatic complexity of types::check_ty 2017-09-25 19:52:29 -07:00
Manish Goregaokar
fabb6b6645
Rustup to rustc 1.22.0-nightly (6c476ce46 2017-09-25) 2017-09-25 19:52:29 -07:00
Manish Goregaokar
d337c7f927
Update changelog 2017-09-25 18:43:34 -07:00
Manish Goregaokar
94c6f4a868 Pass dogfood 2017-09-25 18:39:50 -07:00
Yury Krivopalov
a3ad409341 Configuration option for VERBOSE_BIT_MASK threshold
By default is 1. u64, because I didn't figure out how to deserialize
u128 option from config.
2017-09-25 23:38:49 +03:00
Manish Goregaokar
6842a522bb Merge pull request #2079 from rust-lang-nursery/ptr_arg-vs-capacity
avoid linting `ptr_arg` if `.capacity()` is called.
2017-09-25 10:22:57 -07:00
Laura Peskin
d7867ef8c1 add lint for mutable borrow; may have false positives. pushed for feedback 2017-09-25 02:00:21 -04:00
Laura Peskin
2fe968774a replace defids with nodeids for local variables 2017-09-25 01:44:47 -04:00
Laura Peskin
c326a779dd use def_id of function in check_for_mutation 2017-09-24 15:40:17 -04:00
Laura Peskin
9a17150a06 refactor, add spans to warnings, add tests 2017-09-24 15:40:17 -04:00
Manish Goregaokar
d0eff10a7c Update test, fix lint 2017-09-24 15:40:16 -04:00
Manish Goregaokar
27d5ff6c9c Rustup 2017-09-24 15:40:16 -04:00
Laura Peskin
74f4fd32e9 attempt to add check for mutation of range bound within loop; compiles but doesn't work as intended. pushed for feedback 2017-09-24 15:40:16 -04:00
Laura Peskin
319f12a4c4 implement lint for mutable range bound 2017-09-24 15:40:16 -04:00
Laura Peskin
b091fb9b24 add lint declaration and example that should trigger the lint 2017-09-24 15:40:16 -04:00
Oliver Schneider
4ab2223e59 Merge pull request #2060 from mrecachinas/feature/int-plus-one
Addresses #1955 - Suggests >= y + 1 become > y
2017-09-24 13:57:56 +02:00
Michael Recachinas
f571cf0b5e Change rtype of int_plus_one detection to Option<String> 2017-09-24 12:31:12 +01:00
Michael Recachinas
9437d2909c Change to returning Option<(bool, Option<String>)> 2017-09-24 10:30:29 +01:00
Michael Recachinas
fff35736e4 Remove old return-value 2017-09-24 09:58:58 +01:00
Manish Goregaokar
e3c4ec74d7 Rust upgrade to rustc 1.22.0-nightly (14039a42a 2017-09-22) 2017-09-23 13:30:29 -07:00
Michael Recachinas
21e9a1285d Use span_lint_and_then as per feedback 2017-09-23 19:32:11 +01:00
Andre Bogus
1e0268fda8 avoid linting ptr_arg if .capacity() is called. Also suggest removing .as_str() where applicable.
THis fixes #2070.

Also fixes a few formatting mishaps
2017-09-20 23:59:23 +02:00
Chris Emerson
9a0a8a0010 Move has_drop to the utils module. 2017-09-19 21:38:35 +01:00
Manish Goregaokar
31489d75a3 Bump to 0.0.162 2017-09-18 20:27:24 -07:00
Manish Goregaokar
35fa4429e3 Rust upgrade to rustc 1.22.0-nightly (0701b37d9 2017-09-18) 2017-09-18 20:23:08 -07:00
Martin Carton
0b64222a68 Fix case in doc_valid_idents
BibTeX and BibLaTeX use the usual capitalization of TeX tools:
- https://www.ctan.org/pkg/bibtex
- https://www.ctan.org/pkg/biblatex
2017-09-18 22:40:00 +02:00
Chris Emerson
f680eb164d Update unnecessary_operation and no_effect to not suggest removing
structs/enums wrappers when that type implements Drop as noted
in #2061.
2017-09-18 20:07:33 +01:00
Luca Bruno
62ae6d2251
lints/doc_markdown: add two more entries 2017-09-18 14:44:28 +00:00
Michael Recachinas
535302efda Register 'int_plus_one' lint case in clippy_lints 2017-09-17 17:27:16 +01:00
Michael Recachinas
d7ea6addf0 (#1955): Suggests x > y over x >= y + 1 for ints
This module handles the following cases:
- `... >= ... + 1` and `... >= 1 + ...`
- `... - 1 >= ...` and `-1 + ... >= ...`
- `... + 1 <= ...` and `... + 1 <= ...`
- `... <= ... - 1` and `... <= -1 + ...`

Note: this only goes 1 level deep (i.e., does not constant-fold) and
does not currently simplify expressions. Examples of these
cases include:
```rust
let x = 1;
y >= y + x; // won't catch this case or any permutation

x + 1 >= y + 2; // won't catch this case

x + 1 - 1 >= y - 1 + 1; // WILL catch this case when it likely shouldn't
```
2017-09-17 17:18:12 +01:00
Oliver Schneider
2bb8efdb4d Merge pull request #2058 from rust-lang-nursery/ptr_arg-vs-clone
add suggestions for .clone() in ptr_arg fns
2017-09-17 15:37:21 +02:00
Marcus Klaas
48ed3c058f Extend MANUAL_MEMCPY lint so that it also detects manual clones between slices 2017-09-16 19:17:22 -04:00
Marcus Klaas
e461e3f915 Format loops.rs with latest stable rustfmt 2017-09-16 18:45:28 -04:00
llogiq
708a818094 Merge pull request #2057 from topecongiro/issue-1818
Enhance CHARS_*_CMP lint
2017-09-16 09:16:55 +02:00
Andre Bogus
72be166756 add suggestions for .clone() in ptr_arg fns 2017-09-16 09:10:26 +02:00
topecongiro
81f5c69131 Enhance CHARS_*_CMP lint 2017-09-16 14:50:07 +09:00
topecongiro
197664e989 Add suggestion to needless_borrow 2017-09-16 11:27:24 +09:00
Seiichi Uchida
1f6801dd6a Add ExprLoop to contains_continue_expr() 2017-09-14 22:26:59 +09:00
Oliver Schneider
b2c88b0a35
Merge remote-tracking branch 'origin/master' into rustup 2017-09-13 15:41:09 +02:00
Oliver Schneider
32a9394490
Rustup 2017-09-13 15:34:04 +02:00
Tuomas Siipola
d768fe8c16
Fix link in trivial_regex 2017-09-12 19:08:25 +03:00
Tuomas Siipola
6d3db724b7
Fix empty documentation in unit_expr 2017-09-12 19:08:25 +03:00
Tuomas Siipola
2b698db1ae
Fix links in approx_const 2017-09-12 19:08:18 +03:00
Oliver Schneider
b7222be917
Version bump 2017-09-12 14:40:24 +02:00
Oliver Schneider
b127ad251f
Rustup 2017-09-12 14:38:59 +02:00
Andre Bogus
e7e8e79020 suggestion for ptr_arg 2017-09-10 19:32:24 +02:00
Aaron Hill
d318ced660
Add CLONE_ON_REF_PTR lint
Closes issue #1645
2017-09-09 21:52:19 -04:00
Oliver Schneider
edcf6e7e80
Use hir_id instead of fetching hir_id via the NodeId 2017-09-09 14:06:41 +02:00
Aaron Hill
8adc42b5b4
Update for latest Rust
This is mainly due to https://github.com/rust-lang/rust/commit/dead08cb33134
2017-09-09 01:23:08 -04:00
Manish Goregaokar
8aa1d118b3 Merge pull request #2004 from sunfishcode/master
When suggesting `from(x)` for lossless casts, strip parens from `x`.
2017-09-05 15:09:39 -07:00
Manish Goregaokar
44b852b10e Merge pull request #2023 from montrivo/while_let_loop
`while_let_loop` doesn't take into account break-with-value #1948
2017-09-05 14:19:00 -07:00
Tim Nielens
7489a84c6a while_let_loop doesn't take into account break-with-value #1948 2017-09-05 22:28:30 +02:00
Oliver Schneider
8c824e4cbc Also ignore continue statements in is_unit_expr 2017-09-05 12:12:44 -07:00
Manish Goregaokar
7e9ba81297 for loops -> for-loops 2017-09-05 12:10:53 -07:00
Dan Gohman
396cfa7055 Only strip parens for binary expressions. 2017-09-05 10:55:08 -07:00
Dan Gohman
35cf2715dc When suggesting from(x) for lossless casts, strip parens from x. 2017-09-05 10:55:04 -07:00
Manish Goregaokar
bc602df324 Update changelog 2017-09-05 10:54:45 -07:00
Manish Goregaokar
07d5dba0b7 Update changelog 2017-09-05 09:45:14 -07:00
Marcus Klaas
90f345df94
Add lint to detect manual slice copies 2017-09-05 12:56:26 +02:00
Oliver Schneider
e4524ac4de
Run nightly rustfmt 2017-09-05 12:39:27 +02:00
M. Hasbini
ee8c51be00 Fix "further information" link
"further information" link was missing the `v` part from the url.
e.g.
wrong (404 notfound): https://rust-lang-nursery.github.io/rust-clippy/0.0.157/index.html#map_entry
correct: https://rust-lang-nursery.github.io/rust-clippy/v0.0.157/index.html#map_entry
2017-09-04 20:03:51 +03:00
Oliver Schneider
7757c893ef
Fix len_zero ICE 2017-09-04 17:05:47 +02:00
Oliver Schneider
009f5aaf83
Update to latest nightly 2017-09-04 16:10:36 +02:00
Manish Goregaokar
5e1899138f
Fix dogfood 2017-09-03 14:58:27 -07:00
Manish Goregaokar
2544458559
Run rustfmt 2017-09-03 14:15:18 -07:00
Manish Goregaokar
35eda0531a
Fix unit_expr expectations and changelog entry 2017-09-03 14:14:20 -07:00
Manish Goregaokar
e56da2782c Merge branch 'pr-2016' into HEAD 2017-09-03 14:02:16 -07:00
Zaki Manian
0d9f56674d Mention the false positive 2017-09-03 14:01:29 -07:00
Manish Goregaokar
4807909152 Rustup to rustc 1.22.0-nightly (744dd6c1d 2017-09-02) (fixes #2013) 2017-09-03 13:55:45 -07:00
Zaki Manian
8b53f2238b Fix all the clippy lints
Add false positive tests
2017-09-03 13:39:49 -07:00
Zaki Manian
6657d4e7ff Remove direct call for Deref
Remove "assigns" from the lint
2017-09-03 12:50:02 -07:00
Zaki Manian
e0caf26586 RustFmt file and tests 2017-09-03 11:19:59 -07:00
Zaki Manian
1c7583776b Don't trigger lint on break or return 2017-09-03 11:17:20 -07:00
Zaki Manian
98ec8657e4 Improve the lint message 2017-09-03 09:52:28 -07:00
Zaki Manian
0233d9b0e7 Fix false positives in assignment inside the else condition 2017-09-03 08:31:15 -07:00
Zaki Manian
93e78c81a1 RustFmt changes 2017-09-02 21:33:26 -07:00
Zaki Manian
27e55c96ce Switch back to manual deref 2017-09-02 20:45:40 -07:00
Zaki Manian
789e78e72e Improved spans for lints and support match expressions 2017-09-02 20:36:24 -07:00
Zaki Manian
34edc3f782 Handle method calls 2017-09-02 15:04:52 -07:00
Zaki Manian
e7c5825378 Fix brace indentation 2017-09-02 14:20:22 -07:00
Zaki Manian
d6d78cdbbe Check method calls 2017-09-02 14:19:45 -07:00
Zaki Manian
2a97aadacf More initial work 2017-09-02 14:09:41 -07:00
Zaki Manian
9e3be6ae49 Introduce check_stmt 2017-09-02 12:20:43 -07:00
Zaki Manian
a25a172e60 Use the type from the macro 2017-09-02 11:29:01 -07:00
Zaki Manian
f581aa7779 Initial commit of unit expr 2017-09-02 11:25:33 -07:00
Andre Bogus
df29c87303 some small doc improvements 2017-09-01 22:43:34 +02:00
Oliver Schneider
045139613a
Link to current versions docs instead of master docs 2017-09-01 12:34:10 +02:00
Oliver Schneider
ff91c6359a
wiki -> docs 2017-09-01 12:34:10 +02:00
Oliver Schneider
c64073b2f5
Deprecate the wiki and remove the lint list from the README (fixes #1933) 2017-09-01 12:34:05 +02:00
Oliver Schneider
755a236641
Get rid of another handwritten Span construtor in favour of a builtin function 2017-08-31 15:00:21 +02:00
Oliver Schneider
a8cf4e8ecb
Accessing Span internals is deprecated 2017-08-31 14:47:45 +02:00
Oliver Schneider
9d6c0feef2
Rustup (fixes #2002) 2017-08-30 10:54:41 +02:00
Dan Gohman
1ea70116d3 Enable the cast_lossless warning by default. 2017-08-29 05:48:56 -07:00
Oliver Schneider
6bc7893b70 Merge pull request #1956 from sunfishcode/master
Add a lint for lossless casts.
2017-08-29 08:50:36 +02:00
Tim Nielens
ec79970771 len_without_is_empty false positive #1740 2017-08-28 23:18:12 +02:00
Oliver Schneider
73d87d966d
Update tests to current rustc 2017-08-28 18:16:16 +02:00
Dan Gohman
7714203c72 Add a lint for lossless casts. 2017-08-28 08:42:33 -07:00
Oliver Schneider
23bc6508bb Merge pull request #1861 from CBenoit/master
Add example for needless borrowed ref lint and register it
2017-08-28 14:34:30 +02:00
Tatsuyuki Ishi
b8da486ce5 Remove unused extern crates 2017-08-27 16:04:20 +09:00
Tatsuyuki Ishi
f37f2f710c Reorder allow attributes to suppress unknown lint warning 2017-08-27 16:02:05 +09:00
Andre Bogus
39ceca8893 rename TriState -> Finiteness, docs 2017-08-26 19:57:27 +02:00
Andre Bogus
6e7bc6ad9a fix match_path -> match_qpath rename 2017-08-26 00:09:31 +02:00
Andre Bogus
df903edddd New lint: (maybe_)infinite_iter
This fixes #1870 (mostly, does not account for loops yet)
2017-08-25 22:20:52 +02:00
Martin Carton
5cf3f8359f Merge pull request #1989 from Frederick888/fix-1988
Try to fix #1988
2017-08-25 12:39:53 +02:00
Frederick Zhang
70c8fe5539 fix PathParameters usage 2017-08-25 19:38:28 +10:00
Alexey Zabelin
cd57add2c3
Incorporate upstream changes 2017-08-24 20:46:40 -04:00
Alexey Zabelin
695bedbe27
Rename match_path_old to match_path
The old `match_path` was renamed to `match_qpath`.

As per #1983.
2017-08-24 20:42:50 -04:00
Oliver Schneider
ab362031ed Merge pull request #1959 from DarkEld3r/1884-borrowed-box-any
Fix borrowed_box lint for Box<Any>
2017-08-24 23:59:15 +02:00
Oliver Schneider
cb23298eff Merge pull request #1984 from MaloJaffre/fix_int_to_bits
Fix int_ty_to_nbits
2017-08-24 09:11:13 +02:00
Oliver Schneider
36e417cce5 Merge pull request #1982 from rust-lang-nursery/bytecount
new lint: naive_bytecount
2017-08-24 09:09:56 +02:00
Malo Jaffré
d6e4e0639e Fix int_ty_to_nbits
Thanks @oli-obk for the detailed instructions.
Fixes #1957.
2017-08-23 22:18:04 +02:00
Andre Bogus
6d989c729d add closure arg check, also catch non-consts 2017-08-23 17:54:35 +02:00
Stanislav Tkach
81538f6ff3 Fix 'cyclomatic complexity' warning 2017-08-23 17:13:51 +03:00
Stanislav Tkach
45ff467c31 Fix borrowed_box lint for Box<Any> 2017-08-23 17:00:39 +03:00
Andre Bogus
70e34077d5 new lint: naive_bytecount 2017-08-22 23:45:08 +02:00
Tim Nielens
572b3388ac lint #1674: lifetimed types exclusion
add expect() message and update test results
2017-08-22 19:22:47 +02:00
Tim Nielens
3f575d874b lint #1674: lifetimed types exclusion 2017-08-22 19:08:49 +02:00
Oliver Schneider
992d88ab58 Merge pull request #1977 from rust-lang-nursery/panic
Fix a panic and a false positive
2017-08-22 10:20:02 +02:00
Andre Bogus
2362177aaf fix #768 by checking for message macro expansion 2017-08-21 23:23:54 +02:00
Oliver Schneider
c3ef220bba
Rebase and update ui test 2017-08-21 14:22:41 +02:00
Benoît CORTIER
ee2f54723a
Finalize needless_borrowed_ref lint doc.
Make sure the needless_borrowed_ref.stderr in examples is up to date
too.
2017-08-21 14:02:28 +02:00
Benoît CORTIER
c00393163c
Improve needless_borrowed_ref lint: remove the hand rolled span part. 2017-08-21 14:01:31 +02:00
Benoît CORTIER
60ca61ee66
Improve needless_borrowed_ref and add suggestion to it. 2017-08-21 14:00:56 +02:00
Benoît CORTIER
2460454155
Improve needless_borrowed_ref lint comments. 2017-08-21 14:00:29 +02:00
Benoît CORTIER
0063309a00
Now register needless borrowed ref. 2017-08-21 13:59:20 +02:00
Oliver Schneider
66346b22ff Merge pull request #1973 from rust-lang-nursery/fix-1920
remove stars at the beginning of multiline comments
2017-08-21 13:52:26 +02:00
Oliver Schneider
2430e06a60 Run Dogfood for use_self 2017-08-21 13:32:12 +02:00
Oliver Schneider
3eab44acb1
Don't trigger Self suggestion inside derives 2017-08-21 12:58:06 +02:00
Oliver Schneider
56068b1b67
Fix ICE #1969 2017-08-21 12:57:33 +02:00
Oliver Schneider
2493176f0e
Version bump 2017-08-21 09:44:53 +02:00
Oliver Schneider
b005748b85 Merge pull request #1971 from Frederick888/fix-1970
Try to fix #1970
2017-08-21 09:35:59 +02:00
Oliver Schneider
5e5478a3c3 Merge pull request #1931 from rust-lang-nursery/move_links
Change all links to reflect the move to rust-lang-nursery
2017-08-21 09:35:19 +02:00
Andre Bogus
93c48a0977 remove stars at the beginning of multiline comments 2017-08-19 22:52:49 +02:00
Frederick Zhang
f770d15350 use CompilerDesugaringKind 2017-08-19 18:03:29 +10:00
Oliver Schneider
d1eecbaa2f Merge pull request #1965 from montrivo/use_self
lint #1674: replace struct name with `Self` when applicable
2017-08-18 20:54:18 +02:00
Tim Nielens
7aebe3a690 lint #1674: replace struct name with Self when applicable
SelfType const and suggestion
2017-08-18 19:46:50 +02:00
Joonas Koivunen
a5147e8a08 is_from_for_loop: document what first check matches
Removing the first check will break a lot of for-loop UI tests and the
dogfood test.
2017-08-18 17:12:00 +03:00
Joonas Koivunen
cf8e95eb22 is_from_for_desugar: add match for for _ in x
This will avoid `let_unit_value` in the examples in the ui-test.
It might match too widely.
2017-08-18 17:07:39 +03:00
Tim Nielens
7759bd6111 lint #1674: replace struct name with Self when applicable 2017-08-18 01:11:39 +02:00
Oliver Schneider
f3ae929b2d Rustup 2017-08-15 11:10:49 +02:00
Mateusz Mikula
0d244d3f39
Fix verbose_bit_mask off by one error
Fixes #1940
2017-08-14 16:22:20 +02:00
Oliver Schneider
4470d7a8ca Merge branch 'master' into move_links 2017-08-14 10:07:26 +02:00
Oliver Schneider
459cf467c5 Rustup 2017-08-14 09:54:47 +02:00
Oliver Schneider
0e4c49b145
Handfix dogfood issues with the rustfmt changes 2017-08-14 09:43:26 +02:00
Oliver Schneider
b25b6b3355
Rustfmt 2017-08-14 09:43:26 +02:00
Andre Bogus
61a73bb630 some small doc improvements 2017-08-13 00:14:28 +02:00
Frederick Zhang
709c7926d4 fix usage of for_each_relevant_impl 2017-08-09 13:21:33 +10:00
Andre Bogus
f515d7bb67 Change all links to reflect the move to rust-lang-nursery 2017-08-06 23:10:55 +02:00
Andre Bogus
0670d0b59b fixing dogfood 2017-08-06 11:09:53 +02:00
Frederick Zhang
4de37160bb fix ConstFloat usage 2017-08-06 15:06:21 +10:00
Andre Bogus
76ca4dca85 unify checks into single visitor, fix block walk 2017-08-04 07:48:43 +02:00
Andre Bogus
3b7f3dc8e7 WIP: Find binding or assignment within outer loop 2017-08-03 22:11:58 +02:00
Oliver Schneider
6bdb597a9f Fix some more dogfood issues 2017-08-01 13:05:57 +02:00
Oliver Schneider
a5fe4bed0e
The lint doesn't improve perf (yet) 2017-08-01 12:55:53 +02:00
Oliver Schneider
7102442a4b
Use the authoring tool to create a new lint 2017-08-01 12:55:52 +02:00
Oliver Schneider
3a61b452a2
Create a lint authoring helper (generates matching code) 2017-08-01 12:55:52 +02:00
Oliver Schneider
5864072eca Run rustfmt 2017-08-01 10:19:49 +02:00
Oliver Schneider
c9d9619eed update_lints.sh has a different opinion on ordering things 2017-08-01 10:18:56 +02:00
Oliver Schneider
b4d70c9420 Merge pull request #1900 from jayhardee9/luckily_literals_love_lints
Add lints for digit grouping.
2017-08-01 10:15:29 +02:00
Oliver Schneider
9d8d2d87c3 More autoclippyification 2017-08-01 09:55:17 +02:00
Oliver Schneider
4fa6f83708 Clippy fixes itself 2017-08-01 09:45:36 +02:00
Frederick Zhang
9539df06c6 use BindingAnnotation instead of BindingMode 2017-08-01 17:17:38 +10:00
Jay Hardee
9b78086ab3 Fix hints from misc_early 2017-07-31 20:20:27 -04:00
Jay Hardee
500857c944 Merge remote-tracking branch 'upstream/master' into luckily_literals_love_lints 2017-07-31 19:17:42 -04:00
Jay Hardee
06fd8784d7 Loose ends and factor out consistency logic. 2017-07-31 19:06:51 -04:00
Jay Hardee
3b56965242 Use DigitInfo instead of get_digits(). 2017-07-31 19:06:51 -04:00
Jay Hardee
a6cb1189dd do_lint() shouldn't format warnings. 2017-07-31 19:06:51 -04:00
Jay Hardee
471b6811d8 Implement method for digit grouping suggestions 2017-07-31 19:06:51 -04:00
Jay Hardee
fbbd788799 Add some structs for cleaning up lint logic later.
DigitInfo for storing radix, type, digits of a literal.
WarningType for making warning messages consistent.
2017-07-31 19:06:50 -04:00
Jay Hardee
017b77ae05 rustfmt 2017-07-31 19:06:50 -04:00
Matt Kraai
937a0aa20a Update from upstream. 2017-07-31 19:06:23 -04:00
Oliver Schneider
9967e9aacc Update to latest master 2017-07-31 12:37:38 +02:00
Oliver Schneider
72b2e9539f Get rid of double double colons 2017-07-24 16:28:41 +02:00
Matt Kraai
de3bdf5826 Set show_code_when_inline to true
Fixes #1902
2017-07-24 06:37:12 -07:00
Jay Hardee
f17def5801 Use if let over match. 2017-07-22 19:54:44 -04:00
Jay Hardee
83a6dbc828 Fix lint descriptions. 2017-07-22 19:49:47 -04:00
Jay Hardee
2abd1f73d9 Add lint for digit grouping. 2017-07-22 17:49:45 -04:00
Oliver Schneider
68948a5654
Fix various needless_range_loop false positives 2017-07-16 19:34:38 +02:00
Matt Kraai
7131fdad38 Use token_to_string instead of binop_to_string
Fixes #1887
2017-07-13 08:27:57 -07:00
Oliver Schneider
e80d883bf1 Run rustfmt 2017-07-10 10:21:21 +02:00
Oliver Schneider
a82cd77b2b Rustup to *rustc 1.20.0-nightly (d84693b93 2017-07-09)* 2017-07-10 10:17:40 +02:00
uHOOCCOOHu
14a1a08b5e
Search continue in return expr. 2017-07-05 15:57:29 +08:00
Oliver Schneider
1788f7bcde Merge pull request #1847 from Manishearth/nested_while_let
don't lint while_let_on_iterator on nested loops
2017-07-04 16:05:24 +02:00
Oliver Schneider
23b4ad501f Run rustfmt 2017-06-29 16:07:43 +02:00
messense
8ac0388307
Fix compilation on rustc 1.20.0-nightly (69c65d296 2017-06-28) 2017-06-29 21:38:25 +08:00
Oliver Schneider
6a2525ccb8 Merge pull request #1536 from CBenoit/master
Add lint `&ref x` patterns that could be just `x`
2017-06-28 18:45:51 +02:00
Oliver Schneider
d0650ae144 Update for latest master 2017-06-28 11:02:27 +02:00
Benoît CORTIER
e9964e762f Improve needless_borrowed_ref lint doc. 2017-06-26 14:42:24 +02:00
Benoît CORTIER
1cae3366ea Add needless borrowed ref lint (WIP). 2017-06-24 12:04:56 +02:00
Andre Bogus
88aa04dfa5 don't lint while_let_on_iterator on nested loops
The problem is with a nested loop, the iterator may well be reused. This
changeset introduces a false negative, when the iterator is initialized
within the outer loop. A further PR could get rid of this false negative
by checking if the iterator is indeed initialized within the outer loop.
2017-06-23 18:29:18 +02:00
Seo Sanghyeon
745233f3ab Use span_lint_and_sugg 2017-06-22 03:04:04 +09:00
Oliver Schneider
38925a55b7 Replace Range::step_by checking with Iterator::step_by 2017-06-18 16:12:04 +02:00
mcarton
9881b15822 Ignore mix of {,non-}sugared doc in doc_markdown 2017-06-17 18:24:23 +02:00
mcarton
349b45bb99 Fix spans in all cases in doc_markdown 2017-06-17 18:23:37 +02:00
mcarton
aaf9bce905 Fix spans in doc_markdown in most cases 2017-06-17 18:23:37 +02:00
mcarton
d2ef1b318d Rewrite doc_markdown to use pulldown-cmark 2017-06-17 18:23:37 +02:00
mcarton
9c9ad3e281 Add itertools and pulldown-cmark dependencies 2017-06-17 18:22:49 +02:00
messense
16a958b103
rustup to rustc 1.19.0-nightly (258ae6dd9 2017-06-15) 2017-06-16 11:57:44 +08:00
scott-linder
1ce3cbf9c4 Ignore new-without-default lint when new method has generic types
There may be no sensible `Default` impl if the result of `new` depends
on a type parameter.
2017-06-14 12:58:22 -04:00
Oliver Schneider
7056018335 Merge pull request #1501 from scott-linder/types-borrow-box
Types borrow box
2017-06-13 11:30:52 +02:00
Erick Tryzelaar
8c235d19bc in_macro check in NEEDLESS_RETURN
This allows you to define a macro like `try!(...)` that embeds an
early exit without emitting the "needless_return" warning.

Closes #1271.
2017-06-12 19:06:37 -07:00
Andre Bogus
3a8e4c33bd deal with multiple prefixed zeros in literals 2017-06-12 20:41:00 +02:00
scott-linder
1a50755f21 Document check_ty and its new is_local arg. 2017-06-12 08:43:02 -04:00
scott-linder
49bba315e4 Merge nested if into adjacent if_let_chain! 2017-06-12 08:38:29 -04:00
Cameron Steffen
1a453bf72c fix another never_loop 2017-06-11 18:37:59 -05:00
Cameron Steffen
8b00f826d7 Merge branch 'master' into never_loop 2017-06-11 18:25:26 -05:00
scott-linder
74ebe6e69e Add check_local to TypePass for BORROWED_BOX
Adds a boolean flag to indicate whether the current type in `check_ty`
is in a local declaration, as only the borrowed box lint should consider
these types.
2017-06-11 12:20:20 -04:00
scott-linder
c29f5ea83b Commit updated example stderr 2017-06-11 12:19:11 -04:00
scott-linder
deef81a3fc Use span_suggestion in borrowed_box lint 2017-06-11 12:19:11 -04:00
scott-linder
e6eaa726e2 Recurse into inner type when not &Box<T> 2017-06-11 12:19:11 -04:00
scott-linder
80cb48ca1a Actually fix the lint applied 2017-06-11 12:19:11 -04:00
scott-linder
a4c4da1c4b Fix typo in types check 2017-06-11 12:19:11 -04:00
scott-linder
711cad188a check for borrowed box types 2017-06-11 12:19:11 -04:00
Manish Goregaokar
55cb63adfe Bump to 0.0.139 2017-06-10 22:07:09 -07:00
Eduard-Mihai Burtescu
50b3d7ee9d Do not use .sty except for matching on it. 2017-06-11 06:24:13 +03:00
Eduard-Mihai Burtescu
e4ca0e515f Remove uses of span_if_local. 2017-06-11 06:15:53 +03:00
Eduard-Mihai Burtescu
e073dfe9a2 Abide by the common rustc::ty conventions. 2017-06-11 05:57:25 +03:00
Eduard-Mihai Burtescu
cd89737b21 Update for rustc 1.19.0-nightly (4bf5c99af 2017-06-10). 2017-06-11 05:34:47 +03:00
Anders Kaseorg
00b43687e5 Pass extra parameter to CrateStore::item_children for rustc nightly
rust-lang/rust#42507

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2017-06-10 01:41:17 -04:00
mcarton
bb0b597f05 Check for for loop desugaring in highering 2017-06-08 20:17:10 +02:00
Andre Bogus
a648cfeae1 better naming, Iterator::eq 2017-06-07 05:40:57 +02:00
Andre Bogus
8122d3e8cb Check for AsRef/AsMut arguments in wrong_self_convention
This fixes #451
2017-06-06 19:26:50 +02:00
mcarton
01cae3fd6d Rustup to *rustc 1.19.0-nightly (0418fa9d3 2017-06-04)* 2017-06-05 21:49:26 +02:00
Eduard-Mihai Burtescu
010974fafe Finish rustup. 2017-06-05 00:28:01 +03:00
mcarton
edef6c53c0 Continue work on rustup 2017-06-04 20:42:13 +02:00
messense
67cccc5c16
Try to fix compilation error on rustc 1.19.0-nightly (4ed2edaaf 2017-06-01) 2017-06-02 12:13:04 +08:00
Cameron Steffen
4f374824b1 fix never_loop 2017-06-01 21:31:42 -05:00
Cameron Steffen
a73edc0944 add tests and fixes 2017-06-01 00:06:45 -05:00
Cameron Steffen
20728fb0d0 fix never_loop 2017-05-30 22:46:02 -05:00
Manish Goregaokar
8d3c48601d Rustup to rustc 1.19.0-nightly (557967766 2017-05-26) 2017-05-26 22:25:58 -07:00
Georg Brandl
3ba4e8b3fa Demote the never_loop lint to Allow for now.
Also add "known problem" to the description, with link to #1586.
2017-05-26 18:02:43 +02:00
Georg Brandl
06472ca651 Update to fix array_indexing failures: RangeInclusive::NonEmpty is gone 2017-05-26 16:54:07 +02:00
Oliver Schneider
ff873cc900 Rustup to rustc 1.19.0-nightly (5b13bff52 2017-05-23) 2017-05-24 14:19:30 +02:00
messense
30b94b0fb0
Fix build failure on rustc 1.19.0-nightly (0ed1ec9f9 2017-05-18) 2017-05-19 16:54:02 +08:00
Andre Bogus
e75d7ffd2d distinguish debug_assert 2017-05-15 22:49:20 +02:00