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
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
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
Konrad Borowski
a6c4eaa93c
random_state lint
2018-12-30 02:45:34 +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
flip1995
1751d2496d
Run rustfmt on clippy_lints
2018-11-27 21:14:15 +01:00
flip1995
a7fc6799df
Rewrite registered lint collection
2018-10-29 20:44:45 +01: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
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
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
aaeeaa5330
Add internal lint compiler_lint_functions
2018-09-15 11:01:16 +02:00
flip1995
cfa3c33b1d
Fix lint_without_lint_pass lint
2018-09-12 01:34:04 +02:00
Corey Farwell
05f637cf88
Make clippy_lints::{utils,consts} modules private, remove unused items.
2018-08-28 21:32:20 -05:00
Oliver Schneider
63041d070b
Rustup
2018-07-01 13:36:14 +02:00
Daniel Wagner-Hall
4866309f9d
Add default_trait_access lint
2018-06-14 09:11:46 +01:00
Michael Wright
7b2fa2077f
Add duration_subsec lint
...
Closes #2543
2018-06-09 10:21:26 +02:00
Bruno Kirschner
80728a2201
Reduced scope of nonminimal_bool
so that it doesn't evaluate only partially orded types.
2018-06-03 21:46:09 +02:00
Oliver Schneider
c7ce6c07b1
Rustup field -> method transition of ..=
2018-05-03 15:52:44 +02:00
Devon Hollowood
f0e09d43c9
Make cast_ptr_alignment ignore c_void
2018-04-24 11:37:51 -07:00
Evan Simmons
d712991917
New lints for write! / writeln! macros.
2018-04-07 22:45:26 -07:00
Manish Goregaokar
83748f5e48
Rustup to rustc 1.26.0-nightly (ae544ee1c 2018-03-29)
2018-03-30 10:35:51 +02:00
Manish Goregaokar
b75618206c
Move RangeArgument
2018-03-29 13:13:27 +02:00
HMPerson1
3045f432c7
Fix #2496
2018-03-04 22:56:03 -05:00
Manish Goregaokar
552e950080
needless_pass_by_value: Whitelist RangeArgument ( fixes #2357 )
2018-01-18 14:30:53 +05:30
kennytm
44d3ea5308
Fix lint_without_lint_pass
2017-10-31 10:04:02 -07:00
HMPerson1
e5076d06db
Add lint for From<String>
2017-10-20 20:47:30 -04:00
Paul Florence
406931381b
Fixed some code in clippy to pass the new, removed formatting changes.
2017-10-20 10:17:41 -04:00
sinkuu
771d2220d2
Add identity_conversion lint ( fixes #1051 )
2017-10-04 22:16:16 +09:00
Laura Peskin
8e6abc6fd7
alphabetize paths to pass dogfood
2017-09-29 21:48:10 -04:00
Laura Peskin
f3e51d8d65
add lint for creation of invalid references
2017-09-29 21:01:10 -04:00
Aaron Hill
d318ced660
Add CLONE_ON_REF_PTR lint
...
Closes issue #1645
2017-09-09 21:52:19 -04: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
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
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
Oliver Schneider
b25b6b3355
Rustfmt
2017-08-14 09:43:26 +02:00
messense
16a958b103
rustup to rustc 1.19.0-nightly (258ae6dd9 2017-06-15)
2017-06-16 11:57:44 +08:00
Andre Bogus
8122d3e8cb
Check for AsRef/AsMut arguments in wrong_self_convention
...
This fixes #451
2017-06-06 19:26:50 +02:00
Eduard-Mihai Burtescu
010974fafe
Finish rustup.
2017-06-05 00:28:01 +03:00
Georg Brandl
06472ca651
Update to fix array_indexing failures: RangeInclusive::NonEmpty is gone
2017-05-26 16:54:07 +02:00
Oliver Schneider
672045689e
Fix #1730
2017-05-11 19:02:19 +02:00
sinkuu
d81d961ba7
Lint needless take-by-value
2017-02-19 07:59:44 +09:00
sinkuu
ce6e037ac5
Implement unused_io_amount
lint
2017-01-07 22:23:33 +09:00