summary refs log tree commit diff
path: root/compiler/rustc_hir_analysis/src/coherence
AgeCommit message (Collapse)AuthorLines
2023-01-20Auto merge of #105102 - compiler-errors:copy-impl-considering-regions, r=lcnrbors-44/+66
Check ADT fields for copy implementations considering regions Fixes #88901 r? `@ghost`
2023-01-20Auto merge of #106090 - WaffleLapkin:dereffffffffff, r=Nilstriebbors-14/+10
Remove some `ref` patterns from the compiler Previous PR: https://github.com/rust-lang/rust/pull/105368 r? `@Nilstrieb`
2023-01-17Stop using `BREAK` & `CONTINUE` in compilerScott McMurray-3/+3
Switching them to `Break(())` and `Continue(())` instead. libs-api would like to remove these constants, so stop using them in compiler to make the removal PR later smaller.
2023-01-17Rollup merge of #104505 - WaffleLapkin:no-double-spaces-in-comments, r=jackh726Matthias Krüger-2/+2
Remove double spaces after dots in comments Most of the comments do not have double spaces, so I assume these are typos.
2023-01-17Remove double spaces after dots in commentsMaybe Waffle-2/+2
2023-01-17`rustc_hir_analysis`: remove `ref` patternsMaybe Waffle-9/+8
2023-01-17`rustc_hir_analysis`: some general code improvementsMaybe Waffle-5/+2
2023-01-14fix various subst_identity vs skip_binderKyle Matsuda-2/+3
2023-01-14change impl_trait_ref query to return EarlyBinder; remove ↵Kyle Matsuda-7/+5
bound_impl_trait_ref query; add EarlyBinder to impl_trait_ref in metadata
2023-01-14change usages of impl_trait_ref to bound_impl_trait_refKyle Matsuda-5/+7
2023-01-13Suggest lifetime bound in illegal Copy implMichael Goulet-43/+63
2023-01-13Check ADT fields for copy implementations considering regionsMichael Goulet-2/+4
2023-01-09Rollup merge of #106164 - compiler-errors:check-region-tweak, r=oli-obkfee1-dead-2/+4
Move `check_region_obligations_and_report_errors` to `TypeErrCtxt` Makes sense for this function to live with its sibling `resolve_regions_and_report_errors`, around which it's basically just a wrapper.
2023-01-03Rollup merge of #106353 - lukas-code:reduce-red-lines-in-my-ide, r=wesleywiserMichael Goulet-3/+3
Reduce spans for `unsafe impl` errors Because huge spans aren't great for IDEs. Prior art: https://github.com/rust-lang/rust/pull/103749
2023-01-03Move check_region_obligations_and_report_errors to TypeErrCtxtMichael Goulet-2/+4
2023-01-01Implement fix for #67535Troy Neubauer-3/+11
2023-01-01reduce spans for `unsafe impl` errorsLukas Markeffsky-3/+3
2022-12-24Bubble up ErrorGuaranteed from region constraints in method item compareMichael Goulet-2/+2
2022-12-24Rollup merge of #105975 - jeremystucki:rustc-remove-needless-lifetimes, r=eholkMatthias Krüger-2/+2
rustc: Remove needless lifetimes
2022-12-21Give opaque types a better coherence errorOli Scherer-8/+15
2022-12-20rustc: Remove needless lifetimesJeremy Stucki-2/+2
2022-12-18A few small cleanups for `newtype_index`Nilstrieb-2/+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 `#[custom_encodable]` an attribute for `newtype_index`Nilstrieb-1/+1
Makes the syntax a little more rusty.
2022-12-13Combine identical alias armsMichael Goulet-1/+1
2022-12-13Combine projection and opaque into aliasMichael Goulet-1/+1
2022-11-26Rollup merge of #104786 - WaffleLapkin:amp-mut-help, r=compiler-errorsGuillaume Gomez-2/+2
Use the power of adding helper function to simplify code w/ `Mutability` r? `@compiler-errors`
2022-11-25Introduce PredicateKind::ClauseSantiago Pastorino-2/+2
2022-11-23Add `Mutability::{is_mut,is_not}`Maybe Waffle-1/+1
2022-11-23Depend on `Mutability` orderingMaybe Waffle-1/+1
2022-11-22Rollup merge of #103488 - oli-obk:impl_trait_for_tait, r=lcnrManish Goregaokar-53/+0
Allow opaque types in trait impl headers and rely on coherence to reject unsound cases r? ````@lcnr```` fixes #99840
2022-11-22Use `tcx.require_lang_item` instead of unwrappingMaybe Waffle-1/+1
2022-11-21Stop passing the self-type as a separate argument.Oli Scherer-3/+2
2022-11-21Use iterators instead of slices at more sitesOli Scherer-2/+2
2022-11-21Allow opaque types in trait impl headers and rely on coherence to reject ↵Oli Scherer-53/+0
unsound cases
2022-11-14Add rustc_deny_explicit_implMichael Goulet-50/+16
2022-11-06Move fallback_has_occurred to FnCtxtMichael Goulet-2/+2
2022-11-04Rollup merge of #103915 - chenyukang:yukang/fix-103874, r=lcnrMatthias Krüger-3/+1
Improve use of ErrorGuaranteed and code cleanup Part of #103874
2022-11-03change error_reported to use Result instead of an optionyukang-3/+1
2022-10-29Rename some `OwnerId` fields.Nicholas Nethercote-12/+12
spastorino noticed some silly expressions like `item_id.def_id.def_id`. This commit renames several `def_id: OwnerId` fields as `owner_id`, so those expressions become `item_id.owner_id.def_id`. `item_id.owner_id.local_def_id` would be even clearer, but the use of `def_id` for values of type `LocalDefId` is *very* widespread, so I left that alone.
2022-10-20Add fix suggestions for E0199, E0200, and E0569Nicolas Barrios-0/+30
2022-10-16Auto merge of #102931 - camsteffen:inline-overlapping-impls, r=cjgillotbors-6/+5
Make `overlapping_impls` not generic Trying to win back perf from #101632.
2022-10-13Make overlapping_impls non-genericCameron Steffen-6/+5
This improves perf
2022-10-13Report duplicate definition in impls with overlap check.Camille GILLOT-6/+35
2022-10-07Change InferCtxtBuilder from enter to buildCameron Steffen-331/+314
2022-10-07Introduce TypeErrCtxtCameron Steffen-3/+4
TypeErrCtxt optionally has a TypeckResults so that InferCtxt doesn't need to.
2022-10-01Refactor rustc lint APIMaybe Waffle-11/+12
2022-09-27rustc_typeck to rustc_hir_analysislcnr-0/+1951