Rollup of 10 pull requests
Successful merges:
- #62641 (Regenerate character tables for Unicode 12.1)
- #62716 (state also in the intro that UnsafeCell has no effect on &mut)
- #62738 (Remove uses of mem::uninitialized from std::sys::cloudabi)
- #62772 (Suggest trait bound on type parameter when it is unconstrained)
- #62890 (Normalize use of backticks in compiler messages for libsyntax/*)
- #62905 (Normalize use of backticks in compiler messages for doc)
- #62916 (Add test `self-in-enum-definition`)
- #62917 (Always emit trailing slash error)
- #62926 (Fix typo in mem::uninitialized doc)
- #62927 (use PanicMessage in MIR, kill InterpError::description)
Failed merges:
r? @ghost
Suggest trait bound on type parameter when it is unconstrained
Given
```
trait Foo { fn method(&self) {} }
fn call_method<T>(x: &T) {
x.method()
}
```
suggest constraining `T` with `Foo`.
Fix#21673, fix#41030.
Remove uses of mem::uninitialized from std::sys::cloudabi
Addresses #62397 for std::sys::cloudabi, excluding the tests within cloudabi, which will be a separate PR
Instead of
```
mod allocator_abi { /* methods */ }
```
we now generate
```
const _: () = { /* methods */ }
```
and use `std_path` for paths referring to standard library entities.
This way we no longer need to generate `use` and `extern crate` imports, and `#[global_allocator]` starts working inside unnamed blocks.
Rollup of 14 pull requests
Successful merges:
- #60951 (more specific errors in src/librustc/mir/interpret/error.rs)
- #62523 (Delay bug to resolve HRTB ICE)
- #62656 (explain how to search in slice without owned data)
- #62791 (Handle more cases of typos misinterpreted as type ascription)
- #62804 (rustc_typeck: improve diagnostics for _ const/static declarations)
- #62808 (Revert "Disable stack probing for gnux32.")
- #62817 (Tweak span for variant not found error)
- #62842 (Add tests for issue-58887)
- #62851 (move unescape module to rustc_lexer)
- #62859 (Place::as_place_ref is now Place::as_ref)
- #62869 (add rustc_private as a proper language feature gate)
- #62880 (normalize use of backticks in compiler messages for librustc_allocator)
- #62885 (Change "OSX" to "macOS")
- #62889 (Update stage0.txt)
Failed merges:
r? @ghost
In `configure.py`, using the `o` function creates an enable/disable
boolean setting, and writes `true` or `false` in `config.toml`. However,
rustbuild is expecting to parse a `u32` debuginfo level. We can change
to the `v` function to have the options require a value.