Vadim Petrochenkov
dac96d45af
Fix use of bare trait objects everywhere
2021-03-18 02:18:58 +03:00
Vadim Petrochenkov
7e66e9d6b0
More precise spans for HIR paths
2021-03-15 22:13:45 +03:00
Esteban Küber
1d24f07271
Detect match statement intended to be tail expression
...
CC #24157
2021-02-25 09:16:48 -08:00
Esteban Küber
d669882f38
Do not suggest `;` if expression is side effect free
...
When a tail expression isn't unit, we previously always suggested adding
a trailing `;` to turn it into a statement. This suggestion isn't
appropriate for any expression that doesn't have side-effects, as the
user will have likely wanted to call something else or do something with
the resulting value, instead of just discarding it.
2021-02-21 16:34:37 -08:00
Yuki Okushi
446edd1e1a
Rollup merge of #79951 - LeSeulArtichaut:ty-ir, r=nikomatsakis
...
Refractor a few more types to `rustc_type_ir`
In the continuation of #79169 , ~~blocked on that PR~~.
This PR:
- moves `IntVarValue`, `FloatVarValue`, `InferTy` (and friends) and `Variance`
- creates the `IntTy`, `UintTy` and `FloatTy` enums in `rustc_type_ir`, based on their `ast` and `chalk_ir` equilavents, and uses them for types in the rest of the compiler.
~~I will split up that commit to make this easier to review and to have a better commit history.~~
EDIT: done, I split the PR in commits of 200-ish lines each
r? `````@nikomatsakis````` cc `````@jackh726`````
2021-01-28 15:09:02 +09:00
Bastian Kauschke
688cf6406a
replace RefCell with Cell in FnCtxt
2021-01-23 11:47:38 +01:00
LeSeulArtichaut
50e1ae15e9
Use ty::{IntTy,UintTy,FloatTy} in rustc
2021-01-18 21:09:30 +01:00
Jack Huey
3dea68de1d
Review changes
2021-01-16 18:56:37 -05:00
LingMan
ba1f036c7a
Drop a few unneeded borrows
2021-01-15 21:29:28 +01:00
LingMan
a56bffb4f9
Use Option::map_or instead of `.map(..).unwrap_or(..)`
2021-01-14 19:23:59 +01:00
bors
d03fe84169
Auto merge of #79328 - c410-f3r:hir-if, r=matthewjasper
...
Reintroduce hir::ExprKind::If
Basically copied and paste #59288/https://github.com/rust-lang/rust-clippy/pull/4080 with some modifications.
The vast majority of tests were fixed and now there are only a few remaining. Since I am still unable to figure out the missing pieces, any help with the following list is welcome.
- [ ] **Unnecessary `typeck` exception**: [Cheated on this one to make CI green.](https://github.com/rust-lang/rust/pull/79328/files#diff-3faee9ba23fc54a12b7c43364ba81f8c5660045c7e1d7989a02a0cee1c5b2051 )
- [x] **Incorrect span**: [Span should reference `then` and `else` separately.](https://github.com/rust-lang/rust/pull/79328/files#diff-cf2c46e82222ee4b1037a68fff8a1af3c4f1de7a6b3fd798aacbf3c0475abe3d )
- [x] **New note regarding `assert!`**: [Modified but not "wrong". Maybe can be a good thing?](https://github.com/rust-lang/rust/pull/79328/files#diff-9e0d7c89ed0224e2b62060c957177c27db43c30dfe3c2974cb6b5091cda9cfb5 )
- [x] **Inverted report location**: [Modified but not "wrong". Locations were inverted.](https://github.com/rust-lang/rust/pull/79328/files#diff-f637ce7c1f68d523a165aa9651765df05e36c4d7d279194b1a6b28b48a323691 )
- [x] **`src/test/ui/point-to-type-err-cause-on-impl-trait-return.rs` has weird errors**: [Not sure why this is happening.](https://github.com/rust-lang/rust/pull/79328/files#diff-c823c09660f5b112f95e97e8ff71f1797b6c7f37dbb3d16f8e98bbaea8072e95 )
- [x] **Missing diagnostic**: [???](https://github.com/rust-lang/rust/pull/79328/files#diff-6b8ab09360d725ba4513933827f9796b42ff9522b0690f80b76de067143af2fc )
2021-01-14 14:41:58 +00:00
Patryk Wychowaniec
d2f8e398f1
Rework diagnostics for wrong number of generic args
2021-01-10 13:07:40 +01:00
Caio
f85fc264fe
Reintroduce hir::ExprKind::If
2021-01-07 18:54:12 -03:00
Matthias Krüger
d12a358673
use matches!() macro in more places
2020-12-24 13:35:12 +01:00
Bastian Kauschke
2bf93bd852
compiler: fold by value
2020-11-16 22:34:57 +01:00
Esteban Küber
62ba365195
Review comments: use newtype instead of `bool`
2020-10-23 08:06:41 -07:00
Esteban Küber
671d7c4afb
Account for possible boxable `impl Future` in semicolon removal suggestions
2020-10-23 08:06:13 -07:00
Andy Russell
14b2d16c5c
ensure arguments are included in count mismatch span
2020-10-15 10:22:39 -04:00
Nicholas-Baron
ce7c73c5a5
Made a submodule for fn_ctxt
2020-10-12 12:18:24 -07:00