about summary refs log tree commit diff
path: root/compiler/rustc_borrowck/src
AgeCommit message (Collapse)AuthorLines
2022-09-11Avoid `Iterator::last`KaDiWa-2/+1
2022-09-10Auto merge of #98559 - jackh726:remove-reempty, r=oli-obkbors-54/+16
Remove ReEmpty r? rust-lang/types
2022-09-09Handle generic parameters.Camille GILLOT-1/+1
2022-09-08Remove ReEmptyJack Huey-32/+4
2022-09-08In ReverseMapper, don't fallback to ReEmpty, instead ReStaticJack Huey-21/+11
2022-09-08Create VarValue::EmptyJack Huey-1/+1
2022-09-08Rollup merge of #101545 - TaKO8Ki:remove-unnecessary-partialord-ord, r=oli-obkDylan DPC-1/+0
Remove unnecessary `PartialOrd` and `Ord`
2022-09-08remove unnecessary `PartialOrd` and `Ord`Takayuki Maeda-1/+0
2022-09-06Check all operands, they may contain indirections in their placeOli Scherer-3/+2
2022-09-06Generalize the Assume intrinsic statement to a general Intrinsic statementOli Scherer-22/+20
2022-09-06Lower the assume intrinsic to a MIR statementOli Scherer-16/+24
2022-09-06Auto merge of #101241 - camsteffen:refactor-binding-annotations, r=cjgillotbors-1/+1
`BindingAnnotation` refactor * `ast::BindingMode` is deleted and replaced with `hir::BindingAnnotation` (which is moved to `ast`) * `BindingAnnotation` is changed from an enum to a tuple struct e.g. `BindingAnnotation(ByRef::No, Mutability::Mut)` * Associated constants added for convenience `BindingAnnotation::{NONE, REF, MUT, REF_MUT}` One goal is to make it more clear that `BindingAnnotation` merely represents syntax `ref mut` and not the actual binding mode. This was especially confusing since we had `ast::BindingMode`->`hir::BindingAnnotation`->`thir::BindingMode`. I wish there were more symmetry between `ByRef` and `Mutability` (variant) naming (maybe `Mutable::Yes`?), and I also don't love how long the name `BindingAnnotation` is, but this seems like the best compromise. Ideas welcome.
2022-09-05Auto merge of #101261 - TaKO8Ki:separate-receiver-from-arguments-in-hir, ↵bors-12/+7
r=cjgillot Separate the receiver from arguments in HIR Related to #100232 cc `@cjgillot`
2022-09-05use `propagate_through_exprs` instead of `propagate_through_expr`Takayuki Maeda-2/+0
fix `ExprKind` static_assert_size fix hir-stats
2022-09-05Auto merge of #101228 - nnethercote:simplify-hir-PathSegment, r=petrochenkovbors-4/+5
Simplify `hir::PathSegment` r? `@petrochenkov`
2022-09-05refactor: remove unnecessary variablesTakayuki Maeda-1/+2
2022-09-05separate the receiver from arguments in HIRTakayuki Maeda-12/+8
2022-09-05Look at move place's type when suggesting mutable reborrowMichael Goulet-6/+6
2022-09-05Don't suggest reborrow if usage is inside a closureMichael Goulet-1/+2
2022-09-05Make `hir::PathSegment::hir_id` non-optional.Nicholas Nethercote-4/+5
2022-09-02Refactor and re-use BindingAnnotationCameron Steffen-1/+1
2022-09-01Rollup merge of #101285 - ↵Matthias Krüger-3/+11
TaKO8Ki:do-not-suggest-adding-move-when-closure-is-already-marked-as-move, r=oli-obk Do not suggest adding `move` to closure when `move` is already used Fixes #101227
2022-09-01tracing::instrument cleanupOli Scherer-20/+13
2022-09-01Always import all tracing macros for the entire crate instead of piecemeal ↵Oli Scherer-1/+0
by module
2022-09-01Directly use the `instrument` macro instead of its full pathOli Scherer-5/+5
2022-09-01do not suggest adding `move` to closure when `move` is already usedTakayuki Maeda-3/+11
2022-08-30Auto merge of #100812 - Nilstrieb:revert-let-chains-nightly, r=Mark-Simulacrumbors-0/+1
Revert let_chains stabilization This is the revert against master, the beta revert was already done in #100538. Bumps the stage0 compiler which already has it reverted.
2022-08-29Rollup merge of #101146 - jackh726:borrowck-logging, r=compiler-errorsMatthias Krüger-67/+29
Various changes to logging of borrowck-related code Cleanups found when doing other changes r? `@compiler-errors`
2022-08-29Revert let_chains stabilizationNilstrieb-0/+1
This reverts commit 326646074940222d602f3683d0559088690830f4. This is the revert against master, the beta revert was already done in #100538.
2022-08-29Various changes to logging of borrowck-related codeJack Huey-67/+29
2022-08-29Rollup merge of #99027 - tmiasko:basic-blocks, r=oli-obkMatthias Krüger-10/+10
Replace `Body::basic_blocks()` with field access Since the refactoring in #98930, it is possible to borrow the basic blocks independently from other parts of MIR by accessing the `basic_blocks` field directly. Replace unnecessary `Body::basic_blocks()` method with a direct field access, which has an additional benefit of borrowing the basic blocks only.
2022-08-28Rollup merge of #101002 - estebank:hashmap-idx, r=davidtwcoMatthias Krüger-3/+113
Provide structured suggestion for `hashmap[idx] = val`
2022-08-26Replace `Body::basic_blocks()` with field accessTomasz Miąsko-10/+10
2022-08-26diag-migAndyJado-76/+169
2022-08-25Provide structured suggestion for `hashmap[idx] = val`Esteban Küber-3/+113
2022-08-24Rollup merge of #100940 - ↵Matthias Krüger-0/+3
TaKO8Ki:do-not-suggest-adding-bound-to-opaque-type, r=fee1-dead Do not suggest adding a bound to a opaque type fixes #100442
2022-08-24Rollup merge of #100906 - ChayimFriedman2:map-index-mut, r=davidtwcoMatthias Krüger-2/+17
Suggest alternatives when trying to mutate a `HashMap`/`BTreeMap` via indexing The error can be quite confusing to newcomers. Fixes #100873. I'm not so sure about the message, open to wording suggestions.
2022-08-24Rollup merge of #100901 - TaKO8Ki:make-some-methods-private, r=sanxiynMatthias Krüger-1/+2
Make some methods private
2022-08-24do not suggest adding a bound to a opaque typeTakayuki Maeda-1/+5
2022-08-23Suggest alternatives when trying to mutate a `HashMap`/`BTreeMap` via indexingChayim Refael Friedman-2/+17
The error can be quite confusing to newcomers.
2022-08-22get rid of `RefCell` in `TransitiveRelation`SparrowLii-21/+22
2022-08-22make some methods privateTakayuki Maeda-1/+2
2022-08-21Rollup merge of #100761 - lcnr:mir-typeck-cleanup, r=compiler-errorsMatthias Krüger-90/+58
some general mir typeck cleanup this pr contains the parts of #95763 which already work correctly. the remaining commits of that PR have some issues which are more complex to fix. r? types
2022-08-21Replace #[lint/warning/error] with #[diag]Xiretza-4/+4
2022-08-20Rollup merge of #100186 - compiler-errors:or-as_mut, r=fee1-deadMatthias Krüger-8/+6
Mention `as_mut` alongside `as_ref` in borrowck error message Kinda fixes #99426 but I guess that really might be better staying open to see if we could make it suggest `as_mut` in a structured way. Not sure how to change borrowck to know that info tho.
2022-08-19move `type_check_internal` into `type_check`lcnr-85/+52
2022-08-19small mir typeck cleanuplcnr-5/+6
2022-08-16Make as_ref suggestion a noteMichael Goulet-8/+6
2022-08-15Fix #95079 by adding help and suggestion for missing move in nested closureYan Chen-0/+37
2022-08-14Suggest as_ref or as_mutMichael Goulet-1/+1