rust/src
Dylan DPC e4b4bf1535
Rollup merge of #95361 - scottmcm:valid-align, r=Mark-Simulacrum
Make non-power-of-two alignments a validity error in `Layout`

Inspired by the zulip conversation about how `Layout` should better enforce `size <= isize::MAX as usize`, this uses an N-variant enum on N-bit platforms to require at the validity level that the existing invariant of "must be a power of two" is upheld.

This was MIRI can catch it, and means there's a more-specific type for `Layout` to store than just `NonZeroUsize`.

It's left as `pub(crate)` here; a future PR could consider giving it a tracking issue for non-internal usage.
2022-04-09 18:26:25 +02:00
..
bootstrap Auto merge of #95440 - jyn514:error-index, r=Mark-Simulacrum 2022-04-08 05:43:25 +00:00
ci Auto merge of #95724 - Kobzol:ci-update-rustc-perf, r=nnethercote 2022-04-09 07:53:34 +00:00
doc Split fuzzy_provenance_casts into lossy and fuzzy, feature gate and test it 2022-04-08 17:41:28 +02:00
etc rustdoc-json-types: implementors -> implementations 2022-03-14 00:05:11 +00:00
librustdoc Rollup merge of #95769 - fmease:fix-issue-95717, r=GuillaumeGomez 2022-04-09 12:52:04 +02:00
llvm-project@9168e236c5 Update to LLVM 14.0.0 final 2022-03-23 11:42:13 -07:00
rustdoc-json-types rustdoc-json-types: implementors -> implementations 2022-03-14 00:05:11 +00:00
test Rollup merge of #95361 - scottmcm:valid-align, r=Mark-Simulacrum 2022-04-09 18:26:25 +02:00
tools Rollup merge of #95676 - pietroalbini:pa-bump-rls, r=pietroalbini 2022-04-09 12:52:03 +02:00
README.md
stage0.json bump stage0 to the latest beta 2022-04-05 22:24:32 +02:00
version bump version to 1.62.0 2022-04-04 09:21:03 +02:00

This directory contains the source code of the rust project, including:

  • The test suite
  • The bootstrapping build system
  • Various submodules for tools, like rustdoc, rls, etc.

For more information on how various parts of the compiler work, see the rustc dev guide.