]> git.lizzy.rs Git - rust.git/log
rust.git
3 years agoMerge remote-tracking branch 'upstream/master' into rustup
flip1995 [Wed, 12 Aug 2020 15:03:54 +0000 (17:03 +0200)]
Merge remote-tracking branch 'upstream/master' into rustup

3 years agoAuto merge of #75405 - flip1995:clippyup, r=Manishearth
bors [Wed, 12 Aug 2020 00:34:19 +0000 (00:34 +0000)]
Auto merge of #75405 - flip1995:clippyup, r=Manishearth

Update Clippy

Biweekly Clippy update (2 days late, since I wanted to wait for https://github.com/rust-lang/rust/pull/75098)

r? @Manishearth

3 years agoMerge commit '09bd400243ed6f7059fedc0c1623aae3792521d6' into clippyup
flip1995 [Tue, 11 Aug 2020 13:43:21 +0000 (15:43 +0200)]
Merge commit '09bd400243ed6f7059fedc0c1623aae3792521d6' into clippyup

3 years agoAuto merge of #5892 - matthiaskrgr:redundant_mut, r=flip1995
bors [Tue, 11 Aug 2020 12:52:41 +0000 (12:52 +0000)]
Auto merge of #5892 - matthiaskrgr:redundant_mut, r=flip1995

unnecessary-mut-passed: make lint message say if fn is a function or a method

changelog: refine "unnecessary-mut-passed" lint message

3 years agoAuto merge of #5891 - flip1995:rustup, r=flip1995
bors [Tue, 11 Aug 2020 12:32:10 +0000 (12:32 +0000)]
Auto merge of #5891 - flip1995:rustup, r=flip1995

Rustup

r? @ghost

Sync back rust-lang/rust#75098

changelog: none

3 years agoFix sync fallout
flip1995 [Tue, 11 Aug 2020 11:57:32 +0000 (13:57 +0200)]
Fix sync fallout

3 years agounnecessary-mut-passed: make lint message say if fn is a function or a method.
Matthias Krüger [Tue, 11 Aug 2020 10:35:55 +0000 (12:35 +0200)]
unnecessary-mut-passed: make lint message say if fn is a function or a method.

3 years agoRollup merge of #75226 - pnadon:miri-undef-uninit, r=RalfJung
Yuki Okushi [Tue, 11 Aug 2020 07:23:47 +0000 (16:23 +0900)]
Rollup merge of #75226 - pnadon:miri-undef-uninit, r=RalfJung

Miri: Renamed "undef" to "uninit"

Renamed remaining references to "undef" to "uninit" when referring to Miri.

Impacted directories are:

- `src/librustc_codegen_llvm/consts.rs`
- `src/librustc_middle/mir/interpret/`
- `src/librustc_middle/ty/print/pretty.rs`
- `src/librustc_mir/`
- `src/tools/clippy/clippy_lints/src/consts.rs`

Upon building Miri based on the new changes it was verified that no changes needed to be made with the Miri project.

Related issue #71193

3 years agoRollup merge of #75098 - Ryan1729:clippy-pointer-cast-lint-experiment, r=oli-obk
Dylan DPC [Mon, 10 Aug 2020 23:56:30 +0000 (01:56 +0200)]
Rollup merge of #75098 - Ryan1729:clippy-pointer-cast-lint-experiment, r=oli-obk

Clippy pointer cast lint experiment

This PR is an experiment about exposing more parts of `rustc_typeck` for use in `clippy`. In particular, the code that checks where a cast is valid or not was exposed, which necessitated exposing [`FnCtxt`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_typeck/check/struct.FnCtxt.html), and figuring out how to create an instance of that type inside `clippy`.

This was prompted by [this clippy issue](https://github.com/rust-lang/rust-clippy/issues/2064).

r? @oli-obk

3 years agoAuto merge of #5888 - matthiaskrgr:lints, r=yaahc
bors [Mon, 10 Aug 2020 22:40:42 +0000 (22:40 +0000)]
Auto merge of #5888 - matthiaskrgr:lints, r=yaahc

make a bunch of lints texts adhere to rustc dev guide

According to the rustc-dev guide: "The text should be matter of fact and avoid capitalization and periods, unless multiple sentences are needed"

changelog: make some lint output adhere to the rustc-dev guide

3 years agoupdate test stderr
Matthias Krüger [Mon, 10 Aug 2020 22:27:55 +0000 (00:27 +0200)]
update test stderr

3 years agoAuto merge of #5889 - ebroto:5886_or_fun_call_const_0_args, r=Manishearth
bors [Mon, 10 Aug 2020 22:12:38 +0000 (22:12 +0000)]
Auto merge of #5889 - ebroto:5886_or_fun_call_const_0_args, r=Manishearth

Avoid or_fun_call for const_fn with no args

Based on #5682 by @lzutao

This avoids a subset of false positives, specifically those related to `const fn`s that take no arguments.
For the rest, a much more involved fix would be needed, see https://github.com/rust-lang/rust-clippy/pull/5682#issuecomment-638681210.

So this does *not* solve #5658

changelog: Avoid triggering [`or_fun_call`] with `const fn`s that take no arguments.

Fixes #5886

3 years agorun cargo dev update-lints
Matthias Krüger [Mon, 10 Aug 2020 21:55:15 +0000 (23:55 +0200)]
run cargo dev update-lints

3 years agoUpdate clippy_lints/src/unwrap.rs
Matthias Krüger [Mon, 10 Aug 2020 21:50:52 +0000 (23:50 +0200)]
Update clippy_lints/src/unwrap.rs

Co-authored-by: Jane Lusby <jlusby42@gmail.com>
3 years agoUpdate clippy_lints/src/neg_cmp_op_on_partial_ord.rs
Matthias Krüger [Mon, 10 Aug 2020 21:50:40 +0000 (23:50 +0200)]
Update clippy_lints/src/neg_cmp_op_on_partial_ord.rs

Co-authored-by: Jane Lusby <jlusby42@gmail.com>
3 years agoneg-cmp-op-on-partial-ord: make lint adhere to lint message convention
Matthias Krüger [Tue, 28 Jul 2020 10:13:22 +0000 (12:13 +0200)]
neg-cmp-op-on-partial-ord: make lint adhere to lint message convention

3 years agoneg-multiply: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 22:24:11 +0000 (00:24 +0200)]
neg-multiply: make lint adhere to lint message convention

3 years agooverflow-check-conditional: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 22:18:34 +0000 (00:18 +0200)]
overflow-check-conditional: make lint adhere to lint message convention

3 years agopath-buf-push-overwrite: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 22:16:28 +0000 (00:16 +0200)]
path-buf-push-overwrite: make lint adhere to lint message convention

3 years agorange-zip-with-len: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 22:12:21 +0000 (00:12 +0200)]
range-zip-with-len: make lint adhere to lint message convention

3 years agoredundant-static-lifetimes: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 21:54:34 +0000 (23:54 +0200)]
redundant-static-lifetimes: make lint adhere to lint message convention

3 years agoalso change "deprecated-attribute" message
Matthias Krüger [Thu, 23 Jul 2020 21:46:52 +0000 (23:46 +0200)]
also change "deprecated-attribute" message

3 years agosuspicious-arithmetic-impl: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 21:45:24 +0000 (23:45 +0200)]
suspicious-arithmetic-impl: make lint adhere to lint message convention

3 years agounknown: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 21:37:16 +0000 (23:37 +0200)]
unknown: make lint adhere to lint message convention

3 years agoref_in_deref: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 21:36:20 +0000 (23:36 +0200)]
ref_in_deref: make lint adhere to lint message convention

3 years agounneeded-field-pattern: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 21:31:33 +0000 (23:31 +0200)]
unneeded-field-pattern: make lint adhere to lint message convention

3 years agoempty-liner-after-outer-attr: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 20:40:50 +0000 (22:40 +0200)]
empty-liner-after-outer-attr: make lint adhere to lint message convention

3 years agodrop_bounds: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 18:05:42 +0000 (20:05 +0200)]
drop_bounds: make lint adhere to lint message convention

3 years agodouble-parens: make lint adhere to lint message convention and do minor refactoring
Matthias Krüger [Thu, 23 Jul 2020 17:56:01 +0000 (19:56 +0200)]
double-parens: make lint adhere to lint message convention and do minor refactoring

3 years agodouble-comparisons: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 17:50:28 +0000 (19:50 +0200)]
double-comparisons: make lint adhere to lint message convention

3 years agodefault-trait-access: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 17:39:35 +0000 (19:39 +0200)]
default-trait-access: make lint adhere to lint message convention

3 years agocmp_null: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 17:21:31 +0000 (19:21 +0200)]
cmp_null: make lint adhere to lint message convention

3 years agounnecessary_unwrap, panicking_unwrap: make lints adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 15:06:29 +0000 (17:06 +0200)]
unnecessary_unwrap, panicking_unwrap: make lints adhere to lint message convention

3 years agochecked-conversions: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 14:58:20 +0000 (16:58 +0200)]
checked-conversions: make lint adhere to lint message convention

3 years agoAvoid or_fun_call for const_fn with no args
Eduardo Broto [Mon, 10 Aug 2020 21:38:58 +0000 (23:38 +0200)]
Avoid or_fun_call for const_fn with no args

3 years agonaive_bytecount: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 13:18:13 +0000 (15:18 +0200)]
naive_bytecount: make lint adhere to lint message convention

3 years agobuiltin-type-shadow: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 13:16:10 +0000 (15:16 +0200)]
builtin-type-shadow: make lint adhere to lint message convention

3 years agobool-comparison: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 13:14:12 +0000 (15:14 +0200)]
bool-comparison: make lint adhere to lint message convention

3 years agotoo-many-lines: make lint adhere to lint message convention
Matthias Krüger [Thu, 23 Jul 2020 13:06:33 +0000 (15:06 +0200)]
too-many-lines: make lint adhere to lint message convention

3 years agoAuto merge of #5887 - robojumper:patch-1, r=flip1995
bors [Mon, 10 Aug 2020 17:51:37 +0000 (17:51 +0000)]
Auto merge of #5887 - robojumper:patch-1, r=flip1995

Fix CHANGELOG's commit range links

Two most recent links linked to the wrong range

changelog: none

3 years agoFix CHANGELOG's commit range links
robojumper [Mon, 10 Aug 2020 15:45:04 +0000 (17:45 +0200)]
Fix CHANGELOG's commit range links

Two most recent links linked to the wrong range

changelog: none

3 years agoAuto merge of #5883 - flip1995:rollup-x9mftxe, r=flip1995
bors [Mon, 10 Aug 2020 13:02:53 +0000 (13:02 +0000)]
Auto merge of #5883 - flip1995:rollup-x9mftxe, r=flip1995

Rollup of 5 pull requests

Successful merges:

 - #5825 (Add the new lint `same_item_push`)
 - #5869 (New lint against `Self` as an arbitrary self type)
 - #5870 (enable #[allow(clippy::unsafe_derive_deserialize)])
 - #5871 (Lint .min(x).max(y) with x < y)
 - #5874 (Make the docs clearer for new contributors)

Failed merges:

r? @ghost

changelog: rollup

3 years agoRollup merge of #5874 - camelid:patch-1, r=flip1995
Philipp Krones [Mon, 10 Aug 2020 12:56:30 +0000 (14:56 +0200)]
Rollup merge of #5874 - camelid:patch-1, r=flip1995

Make the docs clearer for new contributors

It confused me before, so I made it extra obvious that you need to run
a script to set up your toolchain before you can build Clippy.

I also added a note so that new contributors aren't confused when
Clippy doesn't build as a result of a change in rustc's internals.

changelog: make `CONTRIBUTING.md` clearer for new contributors

3 years agoRollup merge of #5871 - wiomoc:feature/methodcall-minmax, r=flip1995
Philipp Krones [Mon, 10 Aug 2020 12:56:29 +0000 (14:56 +0200)]
Rollup merge of #5871 - wiomoc:feature/methodcall-minmax, r=flip1995

Lint .min(x).max(y) with x < y

Fixes  #5854

changelog: Also lint `ord.min(a).max(b)`, where `a < b` in [`min_max`] lint

3 years agoRollup merge of #5870 - ebroto:5789_allow_unsafe_derive_deserialize, r=flip1995
Philipp Krones [Mon, 10 Aug 2020 12:56:27 +0000 (14:56 +0200)]
Rollup merge of #5870 - ebroto:5789_allow_unsafe_derive_deserialize, r=flip1995

enable #[allow(clippy::unsafe_derive_deserialize)]

Before this change this lint could not be allowed as the code we are checking is automatically generated.

changelog: Enable using the `allow` attribute on top of an ADT linted by [`unsafe_derive_deserialize`].

Fixes: #5789
3 years agoRollup merge of #5869 - wiomoc:feature/implicit-self, r=ebroto,flip1995
Philipp Krones [Mon, 10 Aug 2020 12:56:26 +0000 (14:56 +0200)]
Rollup merge of #5869 - wiomoc:feature/implicit-self, r=ebroto,flip1995

New lint against `Self` as an arbitrary self type

Fixes #5861

changelog: * [`needless_arbitrary_self_type`] [#5869](https://github.com/rust-lang/rust-clippy/pull/5869)

3 years agoRollup merge of #5825 - giraffate:same_item_push, r=Manishearth
Philipp Krones [Mon, 10 Aug 2020 12:56:25 +0000 (14:56 +0200)]
Rollup merge of #5825 - giraffate:same_item_push, r=Manishearth

Add the new lint `same_item_push`

changelog: Add the new lint `same_item_push`

Fixed #4078. As I said in https://github.com/rust-lang/rust-clippy/issues/4078#issuecomment-658184195, I referrerd to https://github.com/rust-lang/rust-clippy/pull/4647.

3 years agoAuto merge of #5882 - dima74:ra_setup-prevent-compile-rustc, r=Manishearth
bors [Sun, 9 Aug 2020 19:18:01 +0000 (19:18 +0000)]
Auto merge of #5882 - dima74:ra_setup-prevent-compile-rustc, r=Manishearth

Prevent compile parts of rustc when using `cargo dev ra-setup`

Currently after running `cargo dev ra-setup` the following lines are added to `Cargo.toml`:

```toml
[target]
rustc_data_structures = { path = ".../rust/src/librustc_data_structures" }
rustc_driver = { path = ".../rust/src/librustc_driver" }
rustc_errors = { path = ".../rust/src/librustc_errors" }
rustc_interface = { path = ".../rust/src/librustc_interface" }
rustc_middle = { path = ".../rust/src/librustc_middle" }
```

This pull request adds dependencies for `rustc` crates under `cfg(NOT_A_PLATFORM)`, thus preventing them from compiling together with clippy:

```toml
[target.'cfg(NOT_A_PLATFORM)'.dependencies]
rustc_data_structures = { path = ".../rust/src/librustc_data_structures" }
rustc_driver = { path = ".../rust/src/librustc_driver" }
rustc_errors = { path = ".../rust/src/librustc_errors" }
rustc_interface = { path = ".../rust/src/librustc_interface" }
rustc_middle = { path = ".../rust/src/librustc_middle" }
```

---

This approach was [originally proposed for IntelliJ Rust](https://github.com/intellij-rust/intellij-rust/issues/1618#issuecomment-459098749), and looks like it works for rust-analyzer too.

changelog: none

3 years agoPrevent compile parts of rustc when using `cargo dev ra-setup`
Dmitry Murzin [Sun, 9 Aug 2020 17:21:09 +0000 (22:21 +0500)]
Prevent compile parts of rustc when using `cargo dev ra-setup`

3 years agoadd allow unused_unsafe and allow dead_code
Ryan1729 [Sun, 9 Aug 2020 06:39:14 +0000 (00:39 -0600)]
add allow unused_unsafe and allow dead_code

3 years agofix unary minus on usize and unused variable errors in .fixed file
Ryan1729 [Sun, 9 Aug 2020 06:28:56 +0000 (00:28 -0600)]
fix unary minus on usize and unused variable errors in .fixed file

3 years agoadd a test example of where transmutes_expressible_as_ptr_casts should not suggest...
Ryan1729 [Sun, 9 Aug 2020 06:15:56 +0000 (00:15 -0600)]
add a test example of where transmutes_expressible_as_ptr_casts should not suggest anything

3 years agoupdate stderr for transmutes_expressible_as_ptr_casts
Ryan1729 [Sun, 9 Aug 2020 03:03:41 +0000 (21:03 -0600)]
update stderr for transmutes_expressible_as_ptr_casts

3 years agoAuto merge of #5877 - ebroto:5872_loops_ice, r=Manishearth
bors [Sat, 8 Aug 2020 18:44:48 +0000 (18:44 +0000)]
Auto merge of #5877 - ebroto:5872_loops_ice, r=Manishearth

Fix ICE in `loops` module

changelog: Fix ICE related to `needless_collect` when a call to `iter()` was not present.

I went for restoring the old suggestion of `next().is_some()` over `get(0).is_some()` given that `iter()` is not necessarily present (could be e.g. `into_iter()` or `iter_mut()`)  and that the old suggestion could change semantics, e.g. a call to `filter()` could be present between `iter()` and the collect part.

Fixes #5872

3 years agoAuto merge of #5878 - flip1995:rustup, r=flip1995
bors [Sat, 8 Aug 2020 17:28:34 +0000 (17:28 +0000)]
Auto merge of #5878 - flip1995:rustup, r=flip1995

Rustup

r? @ghost

changelog: none

3 years agoRun fmt
flip1995 [Sat, 8 Aug 2020 17:20:34 +0000 (19:20 +0200)]
Run fmt

3 years agoFix ICE in `loops` module
Eduardo Broto [Sat, 8 Aug 2020 16:13:43 +0000 (18:13 +0200)]
Fix ICE in `loops` module

3 years agoMiri: Renamed "undef" to "uninit"
Philippe Nadon [Sat, 8 Aug 2020 13:53:47 +0000 (07:53 -0600)]
Miri: Renamed "undef" to "uninit"

Renamed remaining references to "undef" to "uninit" when referring to Miri.

Impacted directories are:

- src/librustc_codegen_llvm/consts.rs
- src/librustc_middle/mir/interpret/
- src/librustc_middle/ty/print/pretty.rs
- src/librustc_mir/
- src/tools/clippy/clippy_lints/src/consts.rs

Upon building Miri based on the new changes it was verified that no changes needed to be made with the Miri project.

Related issue #71193

3 years agoEliminate the `SessionGlobals` from `librustc_ast`.
Nicholas Nethercote [Thu, 30 Jul 2020 01:27:50 +0000 (11:27 +1000)]
Eliminate the `SessionGlobals` from `librustc_ast`.

By moving `{known,used}_attrs` from `SessionGlobals` to `Session`. This
means they are accessed via the `Session`, rather than via TLS. A few
`Attr` methods and `librustc_ast` functions are now methods of
`Session`.

All of this required passing a `Session` to lots of functions that didn't
already have one. Some of these functions also had arguments removed, because
those arguments could be accessed directly via the `Session` argument.

`contains_feature_attr()` was dead, and is removed.

Some functions were moved from `librustc_ast` elsewhere because they now need
to access `Session`, which isn't available in that crate.
- `entry_point_type()` --> `librustc_builtin_macros`
- `global_allocator_spans()` --> `librustc_metadata`
- `is_proc_macro_attr()` --> `Session`

3 years agoMake the docs clearer for new contributors
Camelid [Fri, 7 Aug 2020 21:21:14 +0000 (14:21 -0700)]
Make the docs clearer for new contributors

* Add an easy-to-see note at the top of `CONTRIBUTING.md` that points
  new contributors to the Basics docs
* Add a note about compiler errors as a result of internals changes
  that break Clippy

3 years agocheck impl Ord / is_float
Christoph Walcher [Fri, 7 Aug 2020 15:55:25 +0000 (17:55 +0200)]
check impl Ord / is_float

3 years agoignore mutable self reference parameters
Christoph Walcher [Fri, 7 Aug 2020 16:03:12 +0000 (18:03 +0200)]
ignore mutable self reference parameters

3 years agofix nits
Christoph Walcher [Wed, 5 Aug 2020 21:38:55 +0000 (23:38 +0200)]
fix nits

3 years agofix ui tests
Christoph Walcher [Wed, 5 Aug 2020 01:37:29 +0000 (03:37 +0200)]
fix ui tests

3 years agoadopt comments from review
Christoph Walcher [Wed, 5 Aug 2020 00:59:30 +0000 (02:59 +0200)]
adopt comments from review

3 years agofix doc
Christoph Walcher [Tue, 4 Aug 2020 19:07:35 +0000 (21:07 +0200)]
fix doc

3 years agoLint against `Self` as an arbitrary self type
Christoph Walcher [Tue, 4 Aug 2020 18:23:14 +0000 (20:23 +0200)]
Lint against `Self` as an arbitrary self type

Fixes #5861

3 years agoAuto merge of #74821 - oli-obk:const_eval_read_uninit_fast_path, r=wesleywiser
bors [Fri, 7 Aug 2020 15:28:07 +0000 (15:28 +0000)]
Auto merge of #74821 - oli-obk:const_eval_read_uninit_fast_path, r=wesleywiser

Check whether locals are too large instead of whether accesses into them are too large

Essentially this stops const prop from attempting to optimize

```rust
let mut x = [0_u8; 5000];
x[42] = 3;
```

I don't expect this to be a perf improvement without #73656 (which is also where the lack of this PR will be a perf regression).

r? @wesleywiser

3 years agocopy over *.fixed file
Ryan1729 [Fri, 7 Aug 2020 02:28:29 +0000 (20:28 -0600)]
copy over *.fixed file

3 years agoAdd some comments for magic numbers + Add tests
Vadim Petrochenkov [Tue, 4 Aug 2020 21:26:23 +0000 (00:26 +0300)]
Add some comments for magic numbers + Add tests

3 years agoFix clippy
Vadim Petrochenkov [Wed, 22 Jul 2020 14:59:17 +0000 (17:59 +0300)]
Fix clippy

3 years agoApply suggestions from code review
Ryan Wiedemann [Thu, 6 Aug 2020 13:57:31 +0000 (07:57 -0600)]
Apply suggestions from code review

Co-authored-by: Philipp Krones <hello@philkrones.com>
3 years agorun clippy_dev fmt
Ryan1729 [Thu, 6 Aug 2020 12:15:57 +0000 (06:15 -0600)]
run clippy_dev fmt

This seemed to overdo it a bit, affecting multiple submodules, and changing a file I didn't touch, so I didn't commit those changes

3 years agorun clippy_dev update_lints
Ryan1729 [Thu, 6 Aug 2020 12:11:23 +0000 (06:11 -0600)]
run clippy_dev update_lints

3 years agoadd newline to transmutes_expressible_as_ptr_casts.rs
Ryan1729 [Thu, 6 Aug 2020 10:49:06 +0000 (04:49 -0600)]
add newline to transmutes_expressible_as_ptr_casts.rs

3 years agochange filter to assert, and update comments
Ryan1729 [Thu, 6 Aug 2020 10:18:14 +0000 (04:18 -0600)]
change filter to assert, and update comments

3 years agoadd extra error message to the expected stderr for transmutes_expressible_as_ptr_cast...
Ryan1729 [Thu, 6 Aug 2020 03:28:22 +0000 (21:28 -0600)]
add extra error message to the expected stderr for transmutes_expressible_as_ptr_casts test

3 years agoadd documentation to functions that call `do_check` and add a test against lint order...
Ryan1729 [Thu, 6 Aug 2020 02:23:29 +0000 (20:23 -0600)]
add documentation to functions that call `do_check` and add a test against lint ordering changing

3 years agoadd description to assert
Ryan1729 [Tue, 4 Aug 2020 22:45:47 +0000 (16:45 -0600)]
add description to assert

3 years agoaddress some review comments
Ryan1729 [Tue, 4 Aug 2020 01:00:38 +0000 (19:00 -0600)]
address some review comments

3 years agoget the expected number of errors by acknowledging that other lints are covering...
Ryan1729 [Mon, 3 Aug 2020 08:47:25 +0000 (02:47 -0600)]
get the expected number of errors by acknowledging that other lints are covering the same ground

3 years agotry putting the can_be_expressed_as_pointer_cast at the top and find that we still...
Ryan1729 [Mon, 3 Aug 2020 06:54:03 +0000 (00:54 -0600)]
try putting the can_be_expressed_as_pointer_cast at the top and find that we still get an ICE

3 years agoaccidentally cause an ICE by putting the TRANSMUTES_EXPRESSIBLE_AS_PTR_CASTS handling...
Ryan1729 [Mon, 3 Aug 2020 06:16:11 +0000 (00:16 -0600)]
accidentally cause an ICE by putting the TRANSMUTES_EXPRESSIBLE_AS_PTR_CASTS handling after the match

The reason I did this in the first place was to try and figure out why I don't see my expected 7 error messages

3 years agowrite currently failing test for transmutes_expressible_as_ptr_casts
Ryan1729 [Mon, 3 Aug 2020 05:17:11 +0000 (23:17 -0600)]
write currently failing test for transmutes_expressible_as_ptr_casts

There are 5 errors, when there should be 7.

3 years agoinitial compiling version of TRANSMUTES_EXPRESSIBLE_AS_PTR_CASTS
Ryan1729 [Mon, 3 Aug 2020 04:00:51 +0000 (22:00 -0600)]
initial compiling version of TRANSMUTES_EXPRESSIBLE_AS_PTR_CASTS

3 years agorun cargo dev new_lint then move transmutes_expressible_as_ptr_casts into transmute...
Ryan1729 [Mon, 3 Aug 2020 00:41:50 +0000 (18:41 -0600)]
run cargo dev new_lint then move transmutes_expressible_as_ptr_casts into transmute module

3 years agoLint .min(x).max(y) with x < y
Christoph Walcher [Thu, 6 Aug 2020 00:42:40 +0000 (02:42 +0200)]
Lint .min(x).max(y) with x < y

Fixes #5854

3 years agoenable #[allow(clippy::unsafe_derive_deserialize)]
Eduardo Broto [Wed, 5 Aug 2020 22:40:11 +0000 (00:40 +0200)]
enable #[allow(clippy::unsafe_derive_deserialize)]

3 years agoAuto merge of #5809 - JarredAllen:stable_sort_primitive, r=Manishearth
bors [Wed, 5 Aug 2020 20:41:21 +0000 (20:41 +0000)]
Auto merge of #5809 - JarredAllen:stable_sort_primitive, r=Manishearth

Stable sort primitive

changelog: Implements #5762

3 years agoAuto merge of #5859 - ebroto:5765_manual_async_fn_fp, r=yaahc
bors [Wed, 5 Aug 2020 17:52:28 +0000 (17:52 +0000)]
Auto merge of #5859 - ebroto:5765_manual_async_fn_fp, r=yaahc

manual_async_fn: take input lifetimes into account

The anonymous future returned from an `async fn` captures all input
lifetimes. This was not being taken into account.

See https://github.com/rust-lang/rfcs/blob/master/text/2394-async_await.md#lifetime-capture-in-the-anonymous-future

changelog: Take input lifetimes into account in [`manual_async_fn`].

Fixes #5765

3 years agorustfmt
Takayuki Nakata [Wed, 5 Aug 2020 14:10:30 +0000 (23:10 +0900)]
rustfmt

3 years agoJust check if it contains `_` in `for pat`
Takayuki Nakata [Wed, 22 Jul 2020 14:22:17 +0000 (23:22 +0900)]
Just check if it contains `_` in `for pat`

3 years agoUse `mutated_variables`
Takayuki Nakata [Wed, 22 Jul 2020 13:11:31 +0000 (22:11 +0900)]
Use `mutated_variables`

3 years agorustfmt
Takayuki Nakata [Mon, 20 Jul 2020 23:25:11 +0000 (08:25 +0900)]
rustfmt

3 years agoFix a lint message
Takayuki Nakata [Mon, 20 Jul 2020 23:15:13 +0000 (08:15 +0900)]
Fix a lint message

3 years agocargo dev update_lints
Takayuki Nakata [Mon, 20 Jul 2020 13:52:30 +0000 (22:52 +0900)]
cargo dev update_lints

3 years agoRename TypeckTables to TypeckResults
Takayuki Nakata [Mon, 20 Jul 2020 13:40:31 +0000 (22:40 +0900)]
Rename TypeckTables to TypeckResults

3 years agoAdd test case for `same_item_push`
Takayuki Nakata [Sun, 19 Jul 2020 14:43:35 +0000 (23:43 +0900)]
Add test case for `same_item_push`

3 years agoAdd lint `same_item_push`
Takayuki Nakata [Sat, 18 Jul 2020 14:28:31 +0000 (23:28 +0900)]
Add lint `same_item_push`

3 years agoAuto merge of #5857 - tmiasko:try-err-poll, r=matthiaskrgr
bors [Wed, 5 Aug 2020 08:43:37 +0000 (08:43 +0000)]
Auto merge of #5857 - tmiasko:try-err-poll, r=matthiaskrgr

try_err: Consider Try impl for Poll when generating suggestions

There are two different implementation of `Try` trait for `Poll` type:
`Poll<Result<T, E>>` and `Poll<Option<Result<T, E>>>`. Take them into
account when generating suggestions.

For example, for `Err(e)?` suggest either `return Poll::Ready(Err(e))` or
`return Poll::Ready(Some(Err(e)))` as appropriate.

Fixes #5855

changelog: try_err: Consider Try impl for Poll when generating suggestions