[stable] 1.70.0 (backport)
Backport https://github.com/rust-lang/rust/pull/112026 into 1.70.0 stable. Will rebuild dev-static artifacts after this gets built.
r? `@Mark-Simulacrum`
[beta] backport
- debuginfo: split method declaration and definition #111167
- Encode VariantIdx so we can decode ADT variants in the right order #111494
- Simplify find_width_of_character_at_span. #111560
r? cuviper
When we're adding a method to a type DIE, we only want a DW_AT_declaration
there, because LLVM LTO can't unify type definitions when a child DIE is a
full subprogram definition. Now the subprogram definition gets added at the
CU level with a specification link back to the abstract declaration.
(cherry picked from commit 10b69dde3f)
[beta] backport
This PR backports:
- #111015: Remove wrong assertion in match checking.
- #110917: only error combining +whole-archive and +bundle for rlibs
- #111201: bootstrap: add .gitmodules to the sources
r? `@Mark-Simulacrum`
Fixes https://github.com/rust-lang/rust/issues/110912
Checking `flavor == RlibFlavor::Normal` was accidentally lost in
601fc8b36bhttps://github.com/rust-lang/rust/pull/105601
That caused combining +whole-archive and +bundle link modifiers on
non-rlib crates to fail with a confusing error message saying that
combination is unstable for rlibs. In particular, this caused the
build to fail when +whole-archive was used on staticlib crates, even
though +whole-archive effectively does nothing on non-bin crates because
the final linker invocation is left to an external build system.
[beta] backport
This PR backports:
- Encode def span for ConstParam #110425
- Update to LLVM 16.0.2 #110535
- Encode lifetime param spans too #110469
- make sysroot finding compatible with multiarch systems #110281
- Update awscli #110952
- Temporarily disable the jobserver-error test #110361
Also bumps us to the latest released stable, 1.69.0.
r? `@cuviper`