[beta] backport rollup
* poll_fn and Unpin: fix pinning #102737
* Support raw-dylib functions being used inside inlined functions #102988
* Fix line numbers for MIR inlined code #103071
* Add architectures to fn create_object_file #103240
* Add eval hack in super_relate_consts back #103279
* Mark std::os::wasi::io::AsFd etc. as stable. #103308
* Truncate thread names on Linux and Apple targets #103379
* Do not consider repeated lifetime params for elision. #103450
* rustdoc: add missing URL redirect #103588
* Remove commit_if_ok probe from NLL type relation #103601
Also includes a copy of the release notes.
r? `@ghost`
These targets have system limits on the thread names, 16 and 64 bytes
respectively, and `pthread_setname_np` returns an error if the name is
longer. However, we're not in a context that can propagate errors when
we call this, and we used to implicitly truncate on Linux with `prctl`,
so now we manually truncate these names ahead of time.
`should_collapse_debuginfo` detects if the specified span is part of a
macro expansion however it does this by checking if the span is anything
other than a normal (non-expanded) kind, then the span sequence is
walked backwards to the root span.
This doesn't work when the MIR inliner inlines code as it creates spans
with expansion information set to `ExprKind::Inlined` and results in the
line number being attributed to the inline callsite rather than the
normal line number of the inlined code.
Revert "Do not consider method call receiver as an argument in AST."
Reverts #100232, including a few places where there were merge conflicts after this landed.
r? `@pnkfelix`
cc `@cjgillot`
cc #103430 the nightly workaround for this issue.
1 commits in 082503982ea0fb7a8fd72210427d43a2e2128a63..4bc8f24d3e899462e43621aab981f6383a370365
2022-09-13 17:49:38 +0000 to 2022-10-20 06:00:42 +0000
- [BETA-1.65] Fix deadlock when build scripts are waiting for input on stdin (rust-lang/cargo#11257)
PR #98758 introduced code to avoid redundant assertions in derived code
like this:
```
let _: ::core::clone::AssertParamIsClone<u32>;
let _: ::core::clone::AssertParamIsClone<u32>;
```
But the predicate `is_simple_path` introduced as part of this failed to
account for generic arguments. Therefore the deriving code erroneously
considers types like `Option<bool>` and `Option<f32>` to be the same.
This commit fixes `is_simple_path`.
Fixes#103157.
(cherry picked from commit 9a23f60f9c801dd0b4686cc75c6a9979bd8928fa)
To include some `Option<>` fields of different types in a single enum.
The test output is currently buggy, but the next commit will fix that.
(cherry picked from commit dfa9d5c971d74aa5bdf6b99253fe4b7db39f9b67)
[beta] backports
* Avoid duplicating StorageLive in let-else #101894
* Re-add HRTB implied static bug note #101924
* Revert "Copy stage0 binaries into stage0-sysroot" #101942
* implied_bounds: deal with inference vars #102016
* fix ConstProp handling of written_only_inside_own_block_locals #102045
* Fix wrongly refactored Lift impl #102088
* Fix a typo “pararmeter” in error message #102119
* Deny associated type bindings within associated type bindings #102338
* Continue migration of CSS themes #101934
* Fix search result colors #102369
* Fix unwind drop glue for if-then scopes #102394
* Revert "Use getentropy when possible on all Apple platforms" #102693
* Fix associated type bindings with anon const in GAT position #102336
* Revert perf-regression 101620 #102064
* `EscapeAscii` is not an `ExactSizeIterator` #99880
This reverts commit 2cb9a65684dba47c52de8fa938febf97a73e70a9, reversing
changes made to 750bd1a7ff3e010611b97ee75d30b7cbf5f3a03c.
(cherry picked from commit fc43df0333d5862a219f16d294ae38b14b9191d3)