about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2023-11-26move remaining legacy polonius fact generation out of NLL moduleRémy Rakic-40/+46
2023-11-26merge NLL "constraint generation" into livenessRémy Rakic-81/+82
2023-11-26fix variant resolve for type aliasaustaras-14/+62
2023-11-26Auto merge of #118267 - compiler-errors:ambiguity-causes, r=spastorinobors-67/+54
`AmbiguityCause` should not eagerly format strings Minor tweak found when working on some coherence diagnostics stuff (towards `-Ztrait-solver=next-coherence` stabilization)
2023-11-26remove polonius fact generation from NLL constraint generationRémy Rakic-202/+21
2023-11-26Use `usize::repeat_u8` instead of implementing `repeat_byte` in `memchr.rs`Maybe Waffle-16/+2
2023-11-26Rename `{collections=>alloc}{tests,benches}`Maybe Waffle-2/+2
2023-11-26small polish of loan invalidations fact generationRémy Rakic-22/+12
2023-11-26rename polonius constraint generation to what it actually does: emit loan killsRémy Rakic-28/+20
2023-11-26simplify polonius constraint generationRémy Rakic-107/+83
2023-11-26remove NLL liveness from polonius constraint generationRémy Rakic-81/+7
2023-11-26extract polonius "constraint generation"Rémy Rakic-2/+280
to help review, this duplicates the existing NLL + polonius constraint generation component, before splitting them up to only do what they individually need.
2023-11-26another trivial cleanupRémy Rakic-3/+2
fix a comment and move a variable where it's used
2023-11-26extract polonius loan invalidations fact generationRémy Rakic-25/+42
and move the polonius module to the borrowck root
2023-11-26extract polonius universal regions fact generationRémy Rakic-35/+50
2023-11-26extract polonius move fact generationRémy Rakic-85/+91
2023-11-26remove useless local variablesRémy Rakic-11/+8
2023-11-26Improve some comments for non-zero opsMaybe Waffle-14/+44
2023-11-26Auto merge of #15967 - lnicola:salsa-fork, r=lnicolabors-116/+52
internal: Switch to our own `salsa` fork This gets rid of `syn` 1, among others.
2023-11-26Switch to our own salsa forkLaurențiu Nicola-116/+52
2023-11-26Auto merge of #118256 - petrochenkov:nohir, r=compiler-errorsbors-199/+189
rustc: `hir().local_def_id_to_hir_id()` -> `tcx.local_def_id_to_hir_id()` cleanup Noticed this while working on https://github.com/rust-lang/rust/pull/118188. The history here is that the method was moved from HIR map to tcx in https://github.com/rust-lang/rust/pull/93373 as a part of incremental compilation work, so it's unlikely to go back.
2023-11-26Auto merge of #11870 - Alexendoo:declare-clippy-lint-absolute-path, r=Jarchobors-309/+309
Use absolute path for `declare_tool_lint` in `declare_clippy_lint` A minor change to hide that implementation detail changelog: none
2023-11-26rustc: `hir().local_def_id_to_hir_id()` -> `tcx.local_def_id_to_hir_id()` ↵Vadim Petrochenkov-32/+32
cleanup
2023-11-26rustc: `hir().local_def_id_to_hir_id()` -> `tcx.local_def_id_to_hir_id()` ↵Vadim Petrochenkov-199/+189
cleanup
2023-11-26Auto merge of #117880 - lqd:liveness-values, r=cjgillotbors-62/+67
Refactor borrowck liveness values This PR starts cleaning up `rustc_borrowck`, in particular around liveness values: - refactors simple names that make no sense anymore: either referring to older structures using region elements, or to bitset containers and values. - improves comments and fixes others - removes unused return values and unneeded generic arguments r? `@matthewjasper`
2023-11-26add successors and their formatterouz-a-31/+165
2023-11-26Auto merge of #110303 - nbdd0121:master, r=Mark-Simulacrumbors-389/+391
Add `debug_assert_nounwind` and convert `assert_unsafe_precondition` `assert_unsafe_precondition` checks non-CTFE-evaluable conditions in runtime and performs no-op in compile time, while many of its current usage can be checked during const eval.
2023-11-26Auto merge of #118250 - petrochenkov:optdefkind, r=compiler-errorsbors-3/+2
rustc: Make `def_kind` mandatory for all `DefId`s Prerequisite for https://github.com/rust-lang/rust/pull/118188.
2023-11-26Auto merge of #118250 - petrochenkov:optdefkind, r=compiler-errorsbors-56/+36
rustc: Make `def_kind` mandatory for all `DefId`s Prerequisite for https://github.com/rust-lang/rust/pull/118188.
2023-11-26Auto merge of #118300 - compiler-errors:rollup-cm3i8fg, r=compiler-errorsbors-792/+632
Rollup of 7 pull requests Successful merges: - #117651 (coverage: Simplify building coverage expressions based on sums) - #117968 (Stabilize `ptr::addr_eq`) - #118158 (Reduce fluent boilerplate) - #118201 (Miscellaneous `ObligationCauseCode` cleanups) - #118288 (Use `is_{some,ok}_and` more in the compiler) - #118289 (`is_{some,ok}_and` for rustdoc) - #118290 (Don't ICE when encountering placeholders in implied bounds computation) r? `@ghost` `@rustbot` modify labels: rollup
2023-11-26Clean dead codesr0cky-260/+4
2023-11-25bootstrap: remove unused commentWeihang Lo-2/+0
resolver-tests is for test only so no need to document it.
2023-11-25bootstrap: sort items of cargo docsWeihang Lo-4/+4
2023-11-25bootstrap: build `rustfix` doc from `src/tools/cargo`Weihang Lo-0/+1
2023-11-26Bless MIR testsGary Guo-128/+120
2023-11-26Auto merge of #117611 - Nadrieril:linear-pass-take-4, r=cjgillotbors-1002/+1294
Rewrite exhaustiveness in one pass This is at least my 4th attempt at this in as many years x) Previous attempts were all too complicated or too slow. But we're finally here! The previous version of the exhaustiveness algorithm computed reachability for each arm then exhaustiveness of the whole match. Since each of these steps does roughly the same things, this rewrites the algorithm to do them all in one go. I also think this makes things much simpler. I also rewrote the documentation of the algorithm in depth. Hopefully it's up-to-date and easier to follow now. Plz comment if anything's unclear. r? `@oli-obk` I think you're one of the rare other people to understand the exhaustiveness algorithm? cc `@varkor` I know you're not active anymore, but if you feel like having a look you might enjoy this :D Fixes https://github.com/rust-lang/rust/issues/79307
2023-11-25Fix testsGary Guo-114/+117
2023-11-25Address review feedbackGary Guo-5/+11
2023-11-25Convert many `assert_unsafe_precondition` to `debug_assert_nounwind`Gary Guo-132/+98
2023-11-25Add `debug_assert_nounwind`Gary Guo-19/+54
2023-11-25Rollup merge of #118290 - compiler-errors:placeholder-implied, r=aliemjayMichael Goulet-2/+18
Don't ICE when encountering placeholders in implied bounds computation I *could* fix this the right way, though I don't really want to think about the implications of the change. This should have minimal side-effects. r? `@aliemjay` Fixes #118286
2023-11-25Rollup merge of #118289 - compiler-errors:is_some_and_rustdoc, r=fmeaseMichael Goulet-14/+12
`is_{some,ok}_and` for rustdoc slightly more fluent-reading code r? fmease
2023-11-25Rollup merge of #118288 - compiler-errors:is_some_and, r=lqd,dtolnayMichael Goulet-13/+21
Use `is_{some,ok}_and` more in the compiler slightly more fluent-reading code
2023-11-25Rollup merge of #118201 - compiler-errors:obligation-causes, r=cjgillotMichael Goulet-39/+5
Miscellaneous `ObligationCauseCode` cleanups Remove some dead code/unused `ObligationCauseCode`s.
2023-11-25Rollup merge of #118158 - nnethercote:reduce-fluent-boilerplate, ↵Michael Goulet-414/+301
r=compiler-errors Reduce fluent boilerplate Best reviewed one commit at a time. r? `@davidtwco`
2023-11-25Rollup merge of #117968 - Urgau:stabilize-ptr-addr-eq, r=dtolnayMichael Goulet-5/+5
Stabilize `ptr::addr_eq` This PR stabilize the `ptr_addr_eq` library feature, representing: ```rust // core::ptr pub fn addr_eq<T: ?Sized, U: ?Sized>(p: *const T, q: *const U) -> bool; ``` FCP has already started [on the tracking issue](https://github.com/rust-lang/rust/issues/116324#issuecomment-1813008697) and is waiting on the final period comment. Note: stabilizing this feature is somewhat of requirement for a new T-lang lint, cf. https://github.com/rust-lang/rust/pull/117758#issuecomment-1813183686.
2023-11-25Rollup merge of #117651 - Zalathar:fold-sums, r=cjgillotMichael Goulet-305/+270
coverage: Simplify building coverage expressions based on sums This is a combination of some interlinked changes to the code that creates coverage counters/expressions for nodes and edges in the coverage graph: - Some preparatory cleanups in `MakeBcbCounters::make_branch_counters` - Use `BcbCounter` (instead of `CovTerm`) when building coverage expressions - This makes it easier to introduce a fold for building sums - Simplify the creation of coverage expressions based on sums, by having `Iterator::fold` do much of the work - Get rid of the awkward `BcbBranch` enum, and replace it with graph edges represented as `(from_bcb, to_bcb)` - This further simplifies the body of the fold
2023-11-25Remove 3 more unused ObligationCauseCodesMichael Goulet-15/+0
2023-11-25Remove some more unused codepaths in (region) error reportingMichael Goulet-7/+2
2023-11-25Remove some lifetime-only ObligationCauseCode notesMichael Goulet-11/+3