Commit Graph

85 Commits

Author SHA1 Message Date
Jacob Meyers 0f7f30711e add lint on File::read_to_string and File::read_to_end 2020-03-06 09:50:49 -05:00
flip1995 91042db2e8
Add path for display trait 2020-03-03 10:54:30 +01:00
flip1995 58cea334ec
Use lang items instead of get_trait_def_id where possible 2020-03-03 10:54:30 +01:00
daxpedda 0ee393cf01
Add tests and improve checks. 2020-02-17 14:43:38 +01:00
Areredify 63ab7a5e8c lint all guard types, not just lock functions 2020-01-30 18:46:22 +03:00
Mikhail Babenko d1f8621711 add lint 2020-01-30 16:48:56 +03:00
Areredify 796958c7e2 add `option_as_ref_deref` lint 2020-01-23 16:12:16 +03:00
xiongmao86 3c59eaf91c Add lint logic. 2020-01-12 19:54:17 +08:00
Yuki Okushi 9086b17e14 Rustup to rust-lang/rust#67707 2019-12-31 09:17:56 +09:00
Matthias Krüger 98e433d70d
Rustup to rust-lang/rust#66878 2019-12-04 01:34:01 +01:00
Heinz N. Gies 695aa59c6d Add lint for exit 2019-11-07 17:10:18 +01:00
flip1995 562cc63b7e
Fix lint_without_lint_pass lint 2019-10-24 13:54:18 +02:00
Andre Bogus 8d884c8a1a new lint: mem-replace-with-uninit 2019-09-20 00:25:57 +02:00
Andre Bogus b01f2d1126 lint against `MaybeUninit::uninit().assume_init()` 2019-09-03 17:37:38 +02:00
Lzu Tao 09d302a786 Re-factor useless_format lint 2019-08-23 09:16:50 +00:00
Michael Wright 59893bcab0 Fix `temporary_cstring_as_ptr` false negative
Fixes #4375.

Changes the check to test when `.unwrap().as_ptr()` is called on any
`Result<CString, _>` as suggested by @flip1995
(https://github.com/rust-lang/rust-clippy/issues/4375#issuecomment-520724123).
2019-08-21 07:35:04 +02:00
Jeremy Stucki f0ce04f814
Handle calls with 'std::convert::identity' 2019-08-11 19:51:43 +02:00
Ralf Jung 2dcce60fdc deprecate invalid_ref lint 2019-08-11 09:31:55 +02:00
Joe Frikker 1e6c6976dd PR comments 2019-06-23 18:02:13 -04:00
Michael Wright b726b41daf Add OUTER_EXPN_INFO lint 2019-06-08 13:35:04 +02:00
Oliver Scherer f49ef0ec04 Dogfood 2019-05-18 01:42:15 +02:00
Oliver Scherer f7f85a0dca Prevent symbocalypse 2019-05-17 23:53:54 +02:00
Oliver Scherer dfbc74b08b Rustfmt all the things 2019-05-14 10:33:48 +02:00
Oliver Scherer b2dbda4d48 Use symbols instead of strings 2019-05-14 10:33:42 +02:00
bzzzz 7767b3a081 Fixed formatting and typo 2019-02-20 10:12:24 -08:00
bzzzz f9c6682827 Make needless_range_loop not applicable to structures without iter method 2019-02-20 00:10:25 -08: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
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