about summary refs log tree commit diff
path: root/compiler/rustc_resolve
AgeCommit message (Collapse)AuthorLines
2022-10-10Rollup merge of #102829 - compiler-errors:rename-impl-item-kind, r=TaKO8KiYuki Okushi-1/+1
rename `ImplItemKind::TyAlias` to `ImplItemKind::Type` The naming of this variant seems inconsistent given that this is not really a "type alias", and the associated type variant for `TraitItemKind` is just called `Type`.
2022-10-09ImplItemKind::TyAlias => ImplItemKind::TypeMichael Goulet-1/+1
2022-10-06Auto merge of #102726 - matthiaskrgr:rollup-2ghn38b, r=matthiaskrgrbors-2/+12
Rollup of 5 pull requests Successful merges: - #102672 (rustdoc: remove unused CSS class `in-band`) - #102693 (Revert "Use getentropy when possible on all Apple platforms") - #102694 (Suggest calling method if fn does not exist) - #102708 (Suggest `==` to wrong assign expr) - #102710 (Add test for issue 82633) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-10-06Auto merge of #99324 - reez12g:issue-99144, r=jyn514bors-1/+0
Enable doctests in compiler/ crates Helps with https://github.com/rust-lang/rust/issues/99144
2022-10-05Delay function resolution error until typeckMichael Goulet-2/+12
2022-10-01Removed unnecessary for loopstoozy-16/+9
2022-09-30Rollup merge of #102483 - spastorino:create-defs-on-lowering, r=cjgillotMatthias Krüger-15/+0
create def ids for impl traits during ast lowering r? `@cjgillot`
2022-09-30create def ids for impl traits during ast loweringSantiago Pastorino-15/+0
2022-09-29Auto merge of #101887 - nnethercote:shrink-Res, r=spastorinobors-47/+54
Shrink `hir::def::Res` r? `@spastorino`
2022-09-29Emitting error regardless of new param suggestionstoozy-33/+33
2022-09-29Remove from compiler/ cratesreez12g-1/+0
2022-09-29Rollup merge of #102085 - chenyukang:code-refactor, r=cjgillotYuki Okushi-247/+366
Code refactoring smart_resolve_report_errors `smart_resolve_report_errors` https://github.com/rust-lang/rust/blob/4ecfdfac51b159f68fce608792affb34a70e6f73/compiler/rustc_resolve/src/late/diagnostics.rs#L143 is almost 600 lines of code, we should do some code refactoring.
2022-09-29Shrink `hir::def::Res`.Nicholas Nethercote-46/+53
`Res::SelfTy` currently has two `Option`s. When the second one is `Some` the first one is never consulted. So we can split it into two variants, `Res::SelfTyParam` and `Res::SelfTyAlias`, reducing the size of `Res` from 24 bytes to 12. This then shrinks `hir::Path` and `hir::PathSegment`, which are the HIR types that take up the most space.
2022-09-29Change the "dummy self type".Nicholas Nethercote-2/+2
Because this is the only occurrence of a `Res::SelfTy` with `None` and `None` fields, and the next commit will rely on those not being present.
2022-09-28Proper span for new generic param suggestionstoozy-2/+7
2022-09-27Do not overwrite binders for another HirId.Camille GILLOT-20/+35
2022-09-27Properly formatting the multipart suggestionstoozy-1/+1
2022-09-27rustc_typeck to rustc_hir_analysislcnr-2/+2
2022-09-26Using multipart suggestionstoozy-12/+19
2022-09-26Trying to suggest additional lifetime parameterstoozy-8/+32
2022-09-26remove cfg(bootstrap)Pietro Albini-1/+0
2022-09-25Only generate closure def id for async fns with bodyMichael Goulet-3/+7
2022-09-26trivial fix on fallbackyukang-3/+1
2022-09-26more code refactor on smart_resolve_report_errorsyukang-175/+207
2022-09-25Rollup merge of #102161 - compiler-errors:issue-102138, r=tmandryMatthias Krüger-36/+37
Resolve async fn signature even without body (e.g., in trait) Fixes #102138 This "bail if no body" behavior was introduced in #69539 to fix #69401, but that ICE does not reproduce any more. The error message changes a bit, but that's all, and I don't think it's a particularly diagnostic bad regression.
2022-09-24Auto merge of #102040 - TaKO8Ki:separate-definitions-and-hir-owners, r=cjgillotbors-16/+16
Separate definitions and HIR owners in the type system Fixes #83158 r? `@cjgillot`
2022-09-24Only record extra lifetime params for async trait fn with no bodyMichael Goulet-38/+40
2022-09-24Resolve async fn signature even without body (in trait)Michael Goulet-3/+2
2022-09-24separate definitions and `HIR` ownersTakayuki Maeda-16/+16
fix a ui test use `into` fix clippy ui test fix a run-make-fulldeps test implement `IntoQueryParam<DefId>` for `OwnerId` use `OwnerId` for more queries change the type of `ParentOwnerIterator::Item` to `(OwnerId, OwnerNode)`
2022-09-24Rollup merge of #102109 - petrochenkov:addids, r=oli-obkMatthias Krüger-10/+30
resolve: Set effective visibilities for imports more precisely Instead of setting them for all primary and additional IDs of the import, only set them for the binding's true ID.
2022-09-22resolve: Set effective visibilities for imports more preciselyVadim Petrochenkov-10/+30
Instead of setting them for all primary and additional IDs of the import, only set them for the binding's true ID.
2022-09-22Fix a typo in error messageFrank Steffahn-1/+1
2022-09-21add trivial commentsyukang-2/+3
2022-09-21code refactoring smart_resolve_report_errorsyukang-173/+261
2022-09-20Add the `#[derive_const]` attributeDeadbeef-1/+1
2022-09-17Rollup merge of #101713 - Bryanskiy:AccessLevels, r=petrochenkovMatthias Krüger-6/+6
change AccessLevels representation Part of RFC (https://github.com/rust-lang/rust/issues/48054). This patch implements effective visibility table with basic methods and change AccessLevels table representation according to it. r? ``@petrochenkov``
2022-09-15Only enable the let_else feature on bootstrapest31-1/+1
On later stages, the feature is already stable. Result of running: rg -l "feature.let_else" compiler/ src/librustdoc/ library/ | xargs sed -s -i "s#\\[feature.let_else#\\[cfg_attr\\(bootstrap, feature\\(let_else\\)#"
2022-09-14change AccessLevels representationBryanskiy-6/+6
2022-09-14Auto merge of #101709 - nnethercote:simplify-visitors-more, r=cjgillotbors-13/+9
Simplify visitors more A successor to #100392. r? `@cjgillot`
2022-09-12Remove unused argument from `visit_poly_trait_ref`.Nicholas Nethercote-6/+2
2022-09-12Remove unused span argument from `walk_fn`.Nicholas Nethercote-1/+1
2022-09-12Remove `path_span` argument to the `visit_path_segment` methods.Nicholas Nethercote-6/+6
The `visit_path_segment` method of both the AST and HIR visitors has a `path_span` argument that isn't necessary. This commit removes it. There are two very small and inconsequential functional changes. - One call to `NodeCollector::insert` now is passed a path segment identifier span instead of a full path span. This span is only used in a panic message printed in the case of an internal compiler bug. - Likewise, one call to `LifetimeCollectVisitor::record_elided_anchor` now uses a path segment identifier span instead of a full path span. This span is used to make some `'_` lifetimes.
2022-09-11Avoid `Iterator::last`KaDiWa-2/+2
2022-09-09Handle generic parameters.Camille GILLOT-5/+1
2022-09-09Make async fn in traits workMichael Goulet-1/+1
2022-09-09Lower RPITIT to ImplTraitPlaceholder itemMichael Goulet-1/+2
2022-09-09RPITIT placeholder itemsMichael Goulet-0/+4
2022-09-08Rollup merge of #101545 - TaKO8Ki:remove-unnecessary-partialord-ord, r=oli-obkDylan DPC-21/+2
Remove unnecessary `PartialOrd` and `Ord`
2022-09-08Rollup merge of #101498 - petrochenkov:visparam, r=cjgillotDylan DPC-34/+45
rustc: Parameterize `ty::Visibility` over used ID It allows using `LocalDefId` instead of `DefId` when possible, and also encode cheaper `Visibility<DefIndex>` into metadata.
2022-09-08remove unnecessary `PartialOrd` and `Ord`Takayuki Maeda-21/+2