about summary refs log tree commit diff
path: root/compiler/rustc_passes/src/liveness.rs
AgeCommit message (Collapse)AuthorLines
2023-03-21Use local key in providersMichael Goulet-1/+1
2023-03-14Remove box expressions from HIRclubby789-4/+1
2023-03-02rustc_middle: Remove trait `DefIdTree`Vadim Petrochenkov-1/+1
This trait was a way to generalize over both `TyCtxt` and `Resolver`, but now `Resolver` has access to `TyCtxt`, so this trait is no longer necessary.
2023-02-25Add ErrorGuaranteed to HIR ExprKind::ErrMichael Goulet-3/+3
2023-02-14Add `of_trait` to DefKind::Impl.Camille GILLOT-1/+1
2023-01-17Remove double spaces after dots in commentsMaybe Waffle-14/+14
2022-12-18A few small cleanups for `newtype_index`Nilstrieb-4/+2
Remove the `..` from the body, only a few invocations used it and it's inconsistent with rust syntax. Use `;` instead of `,` between consts. As the Rust syntax gods inteded.
2022-12-18Make `#[debug_format]` an attribute in `newtype_index`Nilstrieb-2/+2
This removes the `custom` format functionality as its only user was trivially migrated to using a normal format. If a new use case for a custom formatting impl pops up, you can add it back.
2022-12-01fix #105028, Only suggest removing struct field from destructive binding in ↵yukang-1/+7
shorthand scenario
2022-11-24Auto merge of #104507 - WaffleLapkin:asderefsyou, r=wesleywiserbors-5/+4
Use `as_deref` in compiler (but only where it makes sense) This simplifies some code :3 (there are some changes that are not exacly `as_deref`, but more like "clever `Option`/`Result` method use")
2022-11-20Change to Ty::is_inhabited_fromCameron Steffen-13/+12
2022-11-16Use `as_deref` in compiler (but only where it makes sense)Maybe Waffle-5/+4
2022-11-13Store LocalDefId in hir::Closure.Camille GILLOT-3/+2
2022-11-09DiagnosticBuilder -> DiagnosticMichael Goulet-1/+2
2022-10-01Refactor rustc lint APIMaybe Waffle-42/+23
2022-09-05use `propagate_through_exprs` instead of `propagate_through_expr`Takayuki Maeda-4/+1
fix `ExprKind` static_assert_size fix hir-stats
2022-09-05refactor: remove unnecessary variablesTakayuki Maeda-3/+4
2022-09-05separate the receiver from arguments in HIRTakayuki Maeda-2/+5
2022-09-01Directly use the `instrument` macro instead of its full pathOli Scherer-1/+1
2022-08-30Rollup merge of #100941 - lyming2007:issue-100584, r=oli-obkDylan DPC-11/+71
Point at the string inside literal and mention if we need string inte… …rpolation modified: compiler/rustc_passes/src/liveness.rs
2022-08-29Point at the string inside literal and mention if we need string interpolationYiming Lei-11/+71
modified: compiler/rustc_passes/src/liveness.rs new file: src/test/ui/type/issue-100584.rs new file: src/test/ui/type/issue-100584.stderr
2022-08-23Use par_body_owners for livenessSeo Sanghyeon-55/+46
2022-08-12improve "try ignoring the field" diagnosticGoldstein-2/+32
Closes #95795
2022-07-30Use LocalDefId for closures moreCameron Steffen-1/+1
2022-07-11move else block into the `Local` structDing Xiang Fei-7/+7
2022-07-11lower let-else in MIR insteadDing Xiang Fei-10/+45
2022-07-07Reword comments and rename HIR visiting methods.Camille GILLOT-1/+1
2022-06-12Make `ExprKind::Closure` a struct variant.Camille GILLOT-3/+3
2022-05-18Auto merge of #96863 - SparrowLii:let, r=michaelwoeristerbors-5/+5
use `hir::Let` in `hir::Guard::IfLet` This PR fixes the FIXME about using `hir::Let` in `hir::Guard::IfLet`
2022-05-13rename visit item-like methodsMiguel Guarniz-1/+1
Signed-off-by: Miguel Guarniz <mi9uel9@gmail.com>
2022-05-13remove ItemLikeVisitor and DeepVisitorMiguel Guarniz-1/+1
Signed-off-by: Miguel Guarniz <mi9uel9@gmail.com>
2022-05-09use hir::Let in hir::GuardSparrowLii-5/+5
2022-05-02rustc: Panic by default in `DefIdTree::parent`Vadim Petrochenkov-3/+3
Only crate root def-ids don't have a parent, and in majority of cases the argument of `DefIdTree::parent` cannot be a crate root. So we now panic by default in `parent` and introduce a new non-panicing function `opt_parent` for cases where the argument can be a crate root. Same applies to `local_parent`/`opt_local_parent`.
2022-04-14Reimplement lowering of sym operands for asm! so that it also works with ↵Amanieu d'Antras-4/+6
global_asm!
2022-03-16rustc_error: make ErrorReported impossible to constructmark-2/+2
There are a few places were we have to construct it, though, and a few places that are more invasive to change. To do this, we create a constructor with a long obvious name.
2022-02-285 - Make more use of let_chainsCaio-6/+5
2022-02-19Adopt let else in more placesest31-3/+2
2022-01-17Auto merge of #90986 - camsteffen:nested-filter, r=cjgillotbors-11/+5
Replace `NestedVisitorMap` with generic `NestedFilter` This is an attempt to make the `intravisit::Visitor` API simpler and "more const" with regard to nested visiting. With this change, `intravisit::Visitor` does not visit nested things by default, unless you specify `type NestedFilter = nested_filter::OnlyBodies` (or `All`). `nested_visit_map` returns `Self::Map` instead of `NestedVisitorMap<Self::Map>`. It panics by default (unreachable if `type NestedFilter` is omitted). One somewhat trixty thing here is that `nested_filter::{OnlyBodies, All}` live in `rustc_middle` so that they may have `type Map = map::Map` and so that `impl Visitor`s never need to specify `type Map` - it has a default of `Self::NestedFilter::Map`.
2022-01-17Auto merge of #92816 - tmiasko:rm-llvm-asm, r=Amanieubors-36/+0
Remove deprecated LLVM-style inline assembly The `llvm_asm!` was deprecated back in #87590 1.56.0, with intention to remove it once `asm!` was stabilized, which already happened in #91728 1.59.0. Now it is time to remove `llvm_asm!` to avoid continued maintenance cost. Closes #70173. Closes #92794. Closes #87612. Closes #82065. cc `@rust-lang/wg-inline-asm` r? `@Amanieu`
2022-01-16Replace NestedVisitorMap with NestedFilterCameron Steffen-11/+5
2022-01-12Remove deprecated LLVM-style inline assemblyTomasz Miąsko-36/+0
2022-01-07Remove span from UpvarCapture::ByValueGary Guo-2/+2
This span is unused and is superseded by capture_kind_expr_id in CaptureInfo
2021-12-19Auto merge of #91957 - nnethercote:rm-SymbolStr, r=oli-obkbors-1/+1
Remove `SymbolStr` This was originally proposed in https://github.com/rust-lang/rust/pull/74554#discussion_r466203544. As well as removing the icky `SymbolStr` type, it allows the removal of a lot of `&` and `*` occurrences. Best reviewed one commit at a time. r? `@oli-obk`
2021-12-18Rollup merge of #91896 - pitaj:91867-passes, r=michaelwoeristerMatthias Krüger-1/+1
Remove `in_band_lifetimes` for `rustc_passes` #91867
2021-12-15Remove `in_band_lifetimes` for `rustc_passes`Peter Jaszkowiak-1/+1
2021-12-15Remove unnecessary sigils around `Symbol::as_str()` calls.Nicholas Nethercote-1/+1
2021-12-13let-else: add hir::Let and type check it like a hir::LocalCormac Relf-7/+7
unify typeck of hir::Local and hir::Let remove extraneous pub(crate/super)
2021-10-05Rollup merge of #88871 - FabianWolff:issue-88403, r=jackh726Manish Goregaokar-8/+15
Fix suggestion for nested struct patterns Fixes #88403, and also a similar problem where the unused binding is in a function parameter pattern.
2021-09-12Fix suggestion for nested struct patternsFabian Wolff-8/+15
2021-09-11don't convert types into identical typesMatthias Krüger-2/+2
example: let x: String = String::new().into();