Rollup of 9 pull requests
Successful merges:
- #60742 (Allow const parameters in array sizes to be unified)
- #60756 (Add better tests for hidden lifetimes in impl trait)
- #60928 (Changes the type `mir::Mir` into `mir::Body`)
- #61024 (tests: Centralize proc macros commonly used for testing)
- #61157 (BufReader: In Seek impl, remove extra discard_buffer call)
- #61195 (Special-case `.llvm` in mangler)
- #61202 (Print PermissionExt::mode() in octal in Documentation Examples)
- #61259 (Mailmap fixes)
- #61273 (mention that MaybeUninit is a bit like Option)
Failed merges:
r? @ghost
Print PermissionExt::mode() in octal in Documentation Examples
Printing the file permission mode on unix systems in decimal feels unintuitive. Printing it in octal gives the expected form of e.g. `664`.
tests: Centralize proc macros commonly used for testing
Many proc macros in `ui\proc-macro\auxiliary` were doing same things.
(I added a fair share of those myself.)
Now commonly used macros (empty, identity, etc) are collected in one place - `ui\proc-macro\auxiliary\test-macros.rs`.
Changes the type `mir::Mir` into `mir::Body`
Fixes part 1 of #60229 (previously attempted in #60242).
I stumbled upon the issue and it seems that the previous attempt at solving it was not merged. This is a second try more up-to-date.
The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.
Rollup of 4 pull requests
Successful merges:
- #61123 (Allow to specify profiling data output directory as -Zself-profile argument.)
- #61159 (split core::ptr module into multiple files)
- #61164 (rename Scalar::Bits to Scalar::Raw and bits field to data)
- #61250 (Remove special case for *ios* builds in run-make-fulldeps/print-target-list Makefile)
Failed merges:
r? @ghost
The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.
Revisions asked by eddyb :
- Renamed of all the occurences of {visit/super}_mir
- Renamed test structures `CachedMir` to `Cached`
Fixing the missing import on `AggregateKind`
Remove special case for *ios* builds in run-make-fulldeps/print-target-list Makefile
Previous `TODO` comment in this file mentions [an issue that was closed](https://github.com/rust-lang/rust/issues/29812), and I was able to confirm locally that provided code in that issue no longer produces an ICE. Discussion on that issue seems to indicate this code was no longer needed as of 1.12.0.
I removed the `*ios*` branch from this `case` statement as it may cause confusion, then removed the case statement entirely as it only had a wildcard branch.
rename Scalar::Bits to Scalar::Raw and bits field to data
Also use this opportunity to seal some abstraction leaks (other modules constructing `Scalar::Bits` directly instead of using a constructor).
r? @oli-obk
Allow to specify profiling data output directory as -Zself-profile argument.
The PR also makes `rustc` include the crate-name (if already available) in the output file name.
r? @wesleywiser
At some point we should add some basic tests for `-Zself-profile`.