| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2023-08-14 | Use `{Local}ModDefId` in many queries | Nilstrieb | -21/+37 | |
| 2023-08-13 | Add typed `{Local}DefId` for modules | Nilstrieb | -1/+1 | |
| This allows for better type safety in the compiler and also improves the documentation for many things, making it clear that they expect modules. | ||||
| 2023-08-07 | Store the laziness of type aliases in the DefKind | León Orell Valerian Liehr | -3/+3 | |
| 2023-08-02 | Remove constness from `TraitPredicate` | Deadbeef | -1/+1 | |
| 2023-07-30 | Weaken unnameable_types lint | Bryanskiy | -5/+1 | |
| 2023-07-14 | refactor(rustc_middle): Substs -> GenericArg | Mahdi Dibaiee | -28/+30 | |
| 2023-07-08 | Replace RPITIT current impl with new strategy that lowers as a GAT | Santiago Pastorino | -14/+1 | |
| 2023-07-03 | remove TypeWellFormedFromEnv | Michael Goulet | -1/+0 | |
| 2023-06-30 | Fix associated items effective visibility calculation for type privacy lints | Bryanskiy | -4/+7 | |
| 2023-06-29 | Fix type privacy lints error message | Bryanskiy | -2/+3 | |
| 2023-06-29 | Rollup merge of #112670 - petrochenkov:typriv, r=eholk | Matthias Krüger | -96/+77 | |
| privacy: Type privacy lints fixes and cleanups See individual commits. Follow up to https://github.com/rust-lang/rust/pull/111801. | ||||
| 2023-06-26 | TypeWellFormedInEnv | Michael Goulet | -0/+1 | |
| 2023-06-26 | Migrate predicates_of and caller_bounds to Clause | Michael Goulet | -17/+4 | |
| 2023-06-22 | Migrate item_bounds to ty::Clause | Michael Goulet | -39/+29 | |
| 2023-06-19 | Fully fledged Clause type | Michael Goulet | -2/+2 | |
| 2023-06-19 | s/Clause/ClauseKind | Michael Goulet | -9/+11 | |
| 2023-06-18 | Rollup merge of #112734 - dswij:bounds-predicates-clause, r=compiler-errors | Matthias Krüger | -3/+3 | |
| Make `Bound::predicates` use `Clause` Part of #107250 `Bound::predicates` returns an iterator over `Binder<_, Clause>` instead of `Predicate`. I tried updating `explicit_predicates_of` as well, but it seems that it needs a lot more change than I thought. Will do it in a separate PR instead. | ||||
| 2023-06-17 | Move ConstEvaluatable to Clause | Michael Goulet | -1/+1 | |
| 2023-06-17 | Move WF goal to clause | Michael Goulet | -1/+1 | |
| 2023-06-17 | `Bound::predicates` to return `Clause` | dswij | -3/+3 | |
| 2023-06-16 | Add `AliasKind::Weak` for type aliases. | Oli Scherer | -0/+3 | |
| Only use it when the type alias contains an opaque type. Also does wf-checking on such type aliases. | ||||
| 2023-06-15 | privacy: Rename some variables for clarity | Vadim Petrochenkov | -7/+7 | |
| 2023-06-15 | privacy: Do not mark items reachable farther than their nominal visibility | Vadim Petrochenkov | -7/+11 | |
| This commit reverts a change made in #111425. It was believed that this change was necessary for implementing type privacy lints, but #111801 showed that it was not necessary. Quite opposite, the revert fixes some issues. | ||||
| 2023-06-15 | privacy: Remove `(Non)ShallowEffectiveVis` | Vadim Petrochenkov | -84/+61 | |
| Use a boolean constant parameter instead. Also turn some methods on `DefIdVisitor` into associated constants. | ||||
| 2023-06-12 | Private-in-public lints implementation | Bryanskiy | -49/+250 | |
| 2023-06-08 | increase the accuracy of effective visibilities calculation | Bryanskiy | -25/+21 | |
| 2023-06-01 | Rename `impl_defaultness` to `defaultness` | Deadbeef | -2/+2 | |
| 2023-05-22 | rustc_privacy: Reach underlying types of `impl Trait`s in a separate pass | Vadim Petrochenkov | -17/+29 | |
| outside of fixed point iteration. | ||||
| 2023-05-22 | rustc_privacy: Merge three matches on `ItemKind` into one | Vadim Petrochenkov | -112/+61 | |
| and remove some more `Option`s as a result | ||||
| 2023-05-22 | rustc_privacy: Remove some `Option`s | Vadim Petrochenkov | -32/+25 | |
| in cases where they are guaranteed to be `Some` | ||||
| 2023-05-22 | rustc_privacy: Migrate `EmbargoVisitor` to `visit_all_item_likes_in_crate` | Vadim Petrochenkov | -18/+1 | |
| Previously it had some logic requiring tree visiting, but it was moved to resolve last year. | ||||
| 2023-05-15 | Move expansion of query macros in rustc_middle to rustc_middle::query | John Kåre Alsaker | -1/+1 | |
| 2023-05-11 | Populate effective visibilities in rustc_privacy | Bryanskiy | -117/+157 | |
| 2023-05-09 | Auto merge of #111371 - compiler-errors:revert-110907, r=petrochenkov | bors | -154/+117 | |
| Revert "Populate effective visibilities in `rustc_privacy`" This reverts commit cff85f22f5030fbe7266d272da74a9e76160523c, cc #110907. It needs to be fixed, but there are too many issues being reported that I wanted to put up a revert until a proper fix can be committed. Fixes a ton of issues where private but still reachable impls were missing during codegen: Fixes #111320 Fixes #111321 Fixes #111334 Fixes #111357 Fixes #111368 Fixes #111373 Fixes #111377 Fixes #111386 Fixes #111387 `@bors` p=1 r? `@petrochenkov` | ||||
| 2023-05-08 | Revert "Populate effective visibilities in `rustc_privacy`" | Michael Goulet | -154/+117 | |
| This reverts commit cff85f22f5030fbe7266d272da74a9e76160523c. | ||||
| 2023-05-08 | Rollup merge of #109410 - fmease:iat-alias-kind-inherent, r=compiler-errors | Michael Goulet | -0/+33 | |
| Introduce `AliasKind::Inherent` for inherent associated types Allows us to check (possibly generic) inherent associated types for well-formedness. Type inference now also works properly. Follow-up to #105961. Supersedes #108430. Fixes #106722. Fixes #108957. Fixes #109768. Fixes #109789. Fixes #109790. ~Not to be merged before #108860 (`AliasKind::Weak`).~ CC `@jackh726` r? `@compiler-errors` `@rustbot` label T-types F-inherent_associated_types | ||||
| 2023-05-05 | Populate effective visibilities in `rustc_privacy` | Bryanskiy | -117/+154 | |
| 2023-05-04 | IAT: Introduce AliasKind::Inherent | León Orell Valerian Liehr | -0/+33 | |
| 2023-05-04 | Auto merge of #110806 - WaffleLapkin:unmkI, r=lcnr | bors | -12/+13 | |
| Replace `tcx.mk_trait_ref` with `TraitRef::new` First step in implementing https://github.com/rust-lang/compiler-team/issues/616 r? `@lcnr` | ||||
| 2023-05-02 | resolve: One more attempt to simplify `module_children` | Vadim Petrochenkov | -3/+5 | |
| 2023-04-25 | Replace `tcx.mk_trait_ref` with `ty::TraitRef::new` | Maybe Waffle | -12/+13 | |
| 2023-04-20 | add EarlyBinder to output of explicit_item_bounds; replace ↵ | Kyle Matsuda | -5/+2 | |
| bound_explicit_item_bounds usages; remove bound_explicit_item_bounds query | ||||
| 2023-04-20 | change usages of explicit_item_bounds to bound_explicit_item_bounds | Kyle Matsuda | -2/+5 | |
| 2023-04-18 | Add `rustc_fluent_macro` to decouple fluent from `rustc_macros` | Nilstrieb | -1/+1 | |
| Fluent, with all the icu4x it brings in, takes quite some time to compile. `fluent_messages!` is only needed in further downstream rustc crates, but is blocking more upstream crates like `rustc_index`. By splitting it out, we allow `rustc_macros` to be compiled earlier, which speeds up `x check compiler` by about 5 seconds (and even more after the needless dependency on `serde_json` is removed from `rustc_data_structures`). | ||||
| 2023-04-12 | resolve: Pre-compute non-reexport module children | Vadim Petrochenkov | -1/+1 | |
| Instead of repeating the same logic by walking HIR during metadata encoding. The only difference is that we are no longer encoding `macro_rules` items, but we never currently need them as a part of this list. They can be encoded separately if this need ever arises. `module_reexports` is also un-querified, because I don't see any reasons to make it a query, only overhead. | ||||
| 2023-04-08 | rustc_middle: Remove `Option` from `module_reexports` query | Vadim Petrochenkov | -10/+6 | |
| 2023-03-31 | Auto merge of #109762 - scottmcm:variantdef-indexvec, r=WaffleLapkin | bors | -1/+1 | |
| Update `ty::VariantDef` to use `IndexVec<FieldIdx, FieldDef>` And while doing the updates for that, also uses `FieldIdx` in `ProjectionKind::Field` and `TypeckResults::field_indices`. There's more places that could use it (like `rustc_const_eval` and `LayoutS`), but I tried to keep this PR from exploding to *even more* places. Part 2/? of https://github.com/rust-lang/compiler-team/issues/606 | ||||
| 2023-03-30 | Update `ty::VariantDef` to use `IndexVec<FieldIdx, FieldDef>` | Scott McMurray | -1/+1 | |
| And while doing the updates for that, also uses `FieldIdx` in `ProjectionKind::Field` and `TypeckResults::field_indices`. There's more places that could use it (like `rustc_const_eval` and `LayoutS`), but I tried to keep this PR from exploding to *even more* places. Part 2/? of https://github.com/rust-lang/compiler-team/issues/606 | ||||
| 2023-03-28 | privacy: Support `#![rustc_effective_visibility]` on the crate root | Vadim Petrochenkov | -0/+1 | |
| 2023-03-23 | Rename AliasEq -> AliasRelate | Michael Goulet | -1/+1 | |
