rust/src
bors 6f388bb369 Auto merge of #88369 - lcnr:cec-rename, r=oli-obk
update const generics feature gates

**tl;dr: split const generics into three features: `adt_const_params`, `const_generics_defaults` and `generic_const_exprs`**

continuing the work of `@BoxyUwU` in #88324, this PR
- renames `feature(const_evaluatable_checked)` to `feature(generic_const_exprs)` which now doesn't need any other feature gate to work. Previously `feature(const_evaluatable_checked)` was only useful in combination with `feature(const_generics)`.
- completely removes `feature(lazy_normalization_consts)`. This feature only supplied the parents generics to anonymous constants, which is pretty useless as generic anon consts are only allowed with `feature(generic_const_exprs)` anyways.
- moves the ability to use additional const param types from `feature(const_generics)` into `feature(adt_const_params)`. As `feature(const_generics)` is now mostly useless without `feature(generic_const_exprs)` we also remove that feature flag.
- updates tests, removing duplicates and unnecessary revisions in some cases and also deletes all unused `*.stderr` files.

I not also remove the ordering restriction for const and type parameters if any of the three const generics features is active.
This ordering restriction feels like the only "real" use of the current `feature(const_generics)` right now so this change isn't a perfect solution, but as I intend to stabilize the ordering - and `feature(const_generics_defaults)` -  in the very near future, I think this is acceptable for now.

---

cc `@rust-lang/project-const-generics` about the new feature names and this change in general.

I don't think we need any external approval for this change but I do intend to publish an update to the const generics tracking issue the day this PR lands, so I don't want this merged yet.

Apologies to whoever ends up reviewing this PR 😅 ❤️

r? rust-lang/project-const-generics
2021-08-30 22:21:01 +00:00
..
bootstrap Auto merge of #88250 - rusticstuff:macos-lld, r=nagisa 2021-08-29 04:51:14 +00:00
build_helper rfc3052: Remove authors field from Cargo manifests 2021-07-29 14:56:05 -07:00
ci Bump sccache used in CI to v0.2.15 2021-08-25 16:26:45 -04:00
doc Auto merge of #88281 - asquared31415:asm-docs, r=Amanieu 2021-08-30 07:54:11 +00:00
etc set the executable bit on pre-commit.sh 2021-08-11 15:06:33 -04:00
librustdoc Auto merge of #88456 - inquisitivecrystal:private-macro, r=jyn514 2021-08-30 05:23:54 +00:00
llvm-project@e6c5dd473b Update to LLVM 13 2021-08-16 20:24:02 +02:00
rustdoc-json-types rfc3052: Remove authors field from Cargo manifests 2021-07-29 14:56:05 -07:00
test Auto merge of #88369 - lcnr:cec-rename, r=oli-obk 2021-08-30 22:21:01 +00:00
tools feature(const_generics) -> feature(const_param_types) 2021-08-30 11:00:21 +02:00
README.md
stage0.txt bump bootstrap compiler to 1.55 2021-08-01 11:19:24 -04:00
version Bump to 1.56 2021-07-23 17:04:59 -04: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.