Auto merge of #118607 - Mark-Simulacrum:stable-next, r=Mark-Simulacrum
[stable] 1.74.1 release
This includes backports of:
* Dispose llvm::TargetMachines prior to llvm::Context being disposed #118464
* clarify fn discriminant guarantees: only free lifetimes may get erased #118006
* Move subtyper below reveal_all and change reveal_all #116415
* Make subtyping explicit in MIR #115025 (needed for above)
As well as infrastructure fix:
* Don't ask for a specific branch in cargotest #118597
r? `@Mark-Simulacrum`