The Genesis of Generic Germination
*Long had its coming been foretold: a collaborative effort with @yodaldevoid, set in motion by @jplatte, to beget a new Kind: one of a very different Sort to those that come before it. Amidst promises of ineffable powers previously thought unobtainable, few dared believe that the prophecies were true. But as they gazed upon that which claimed to be the Beginning, a few gentle sparks of hope fluttered deep within. It was not Time yet. But it was a Sign. And maybe, for some, that was enough.*
There's a long way to go, but we're at the point where we would benefit from GitHub's reviewing capabilities.
r? @eddyb
Rollup of 5 pull requests
Successful merges:
- #60131 (Fix broken link in rustc_plugin doc)
- #60426 (Stop `-O`/`-C opt-level` and `-g`/`-C debuginfo` conflicting)
- #60515 (use span instead of div for since version)
- #60530 (rustc: rename all occurences of "freevar" to "upvar".)
- #60536 (Correct code points to match their textual description)
Failed merges:
r? @ghost
rustc: rename all occurences of "freevar" to "upvar".
Most of the more recent code talks about "(closure) upvars", so I believe that's the name we want to use.
There's also the possibility of using "capture" which is more user-facing, but I'd rather not change *both* "freevar" and "upvar" to something else in this one PR.
cc @nikomatsakis @petrochenkov
Move pointee_info_at from rustc_codegen_llvm to rustc_target.
Makes progress towards #56166.
This is a continuation of https://github.com/rust-lang/rust/pull/57150.
@oli-obk Should I close the older PR?
Rename `PathResolution` to `PartialRes`
Don't use `PartialRes` when `Res` is enough.
Rename `Res::kind_name` to `Res::descr` for consistency.
Remove `Res::Label`, paths can never resolve to labels.
Some further cleanup after https://github.com/rust-lang/rust/pull/60462
r? @eddyb
rustc: collapse relevant DefPathData variants into {Type,Value,Macro,Lifetime}Ns.
`DefPathData` was meant to disambiguate within each namespace, but over the years, that purpose was overlooked, and it started to serve a double-role as a sort of `DefKind` (which #60462 properly adds).
Now, we can go back to *only* categorizing namespaces (at least for the variants with names in them).
r? @petrochenkov or @nikomatsakis cc @michaelwoerister
Fix async fn lowering ICE with APIT.
Fixes#60518.
This PR fixes an ICE where simple bindings (which aren't replaced with replacement arguments during async fn lowering) were not being visited in the def collector and thus caused an ICE during HIR lowering for types that use their `DefId` at that point - such as `impl Trait`.
r? @cramertj
Remove -Z borrowck=compare flag
This is the start of the work that needs to be done on #59193. It just removes the flag and updates
the tests.
r? @matthewjasper