about summary refs log tree commit diff
path: root/compiler/rustc_feature/src/removed.rs
AgeCommit message (Collapse)AuthorLines
2024-03-19branch 1.78: replace-version-placeholderMark Rousskov-1/+1
2024-02-25remove platform-intrinsics ABI; make SIMD intrinsics be regular intrinsicsRalf Jung-0/+3
2024-02-08Bump version placeholdersMark Rousskov-1/+1
2024-02-06Rollup merge of #120502 - clubby789:remove-ffi-returns-twice, r=compiler-errorsMatthias Krüger-0/+3
Remove `ffi_returns_twice` feature The [tracking issue](https://github.com/rust-lang/rust/issues/58314) and [RFC](https://github.com/rust-lang/rfcs/pull/2633) have been closed for a couple of years. There is also an attribute gate in R-A which should be removed if this lands.
2024-01-30Remove `ffi_returns_twice` featureclubby789-0/+3
2024-01-30Remove the `abi_amdgpu_kernel` featureclubby789-0/+2
2023-12-22update version placeholdersPietro Albini-1/+1
2023-12-10Remove edition umbrella features.Eric Huss-72/+73
2023-12-04Remove the `precise_pointer_size_matching` feature gateNadrieril-0/+3
2023-11-15Substitute version placeholdersMark Rousskov-1/+1
2023-11-04Remove support for compiler plugins.Nicholas Nethercote-1/+4
They've been deprecated for four years. This commit includes the following changes. - It eliminates the `rustc_plugin_impl` crate. - It changes the language used for lints in `compiler/rustc_driver_impl/src/lib.rs` and `compiler/rustc_lint/src/context.rs`. External lints are now called "loaded" lints, rather than "plugins" to avoid confusion with the old plugins. This only has a tiny effect on the output of `-W help`. - E0457 and E0498 are no longer used. - E0463 is narrowed, now only relating to unfound crates, not plugins. - The `plugin` feature was moved from "active" to "removed". - It removes the entire plugins chapter from the unstable book. - It removes quite a few tests, mostly all of those in `tests/ui-fulldeps/plugin/`. Closes #29597.
2023-10-23Fix suggestion for renamed coroutines featureYotam Ofek-1/+1
2023-10-20Re-add `generators` as a removed feature and point to the new feature nameOli Scherer-0/+4
2023-10-20s/generator/coroutine/Oli Scherer-1/+1
2023-10-16Rename `ACTIVE_FEATURES` as `UNSTABLE_FEATURES`.Nicholas Nethercote-1/+1
It's a better name, and lets "active features" refer to the features that are active in a particular program, due to being declared or enabled by the edition. The commit also renames `Features::enabled` as `Features::active` to match this; I changed my mind and have decided that "active" is a little better thatn "enabled" for this, particularly because a number of pre-existing comments use "active" in this way. Finally, the commit renames `Status::Stable` as `Status::Accepted`, to match `ACCEPTED_FEATURES`.
2023-10-16Remove `rustc_feature::State`.Nicholas Nethercote-7/+12
`State` is used to distinguish active vs accepted vs removed features. However, these can also be distinguished by their location, in `ACTIVE_FEATURES`, `ACCEPTED_FEATURES`, and `REMOVED_FEATURES`. So this commit removes `State` and moves the internals of its variants next to the `Feature` in each element of `*_FEATURES`, introducing new types `ActiveFeature` and `RemovedFeature`. (There is no need for `AcceptedFeature` because `State::Accepted` had no fields.) This is a tighter type representation, avoids the need for some runtime checks, and makes the code a bit shorter.
2023-10-14Auto merge of #116407 - Mark-Simulacrum:bootstrap-bump, r=onur-ozkanbors-1/+1
Bump bootstrap compiler to just-released beta https://forge.rust-lang.org/release/process.html#master-bootstrap-update-t-2-day-tuesday
2023-10-05Merge `STABLE_REMOVED_FEATURES` list into `REMOVED_FEATURES`.Nicholas Nethercote-22/+5
There is a single features (`no_stack_check`) in `STABLE_REMOVED_FEATURES`. But the treatment of `STABLE_REMOVED_FEATURES` and `REMOVED_FEATURES` is actually identical. So this commit just merges them, and uses a comment to record `no_stack_check`'s unique "stable removed" status. This also lets `State::Stabilized` (which was a terrible name) be removed.
2023-10-03Bump version placeholdersMark Rousskov-1/+1
2023-09-14Fix the error message for `#![feature(no_coverage)]`Zalathar-2/+2
2023-09-08Add `no_coverage` to the 'removed features' listAndy Caldwell-0/+3
2023-05-31Remove const eval limit and implement an exponential backoff lint insteadOli Scherer-1/+3
2023-04-28replace version placeholdersPietro Albini-1/+1
2023-04-25Revert "Remove #[alloc_error_handler] from the compiler and library"Matthias Krüger-2/+0
This reverts commit abc0660118cc95f47445fd33502a11dd448f5968.
2023-04-22Auto merge of #109507 - Amanieu:panic-oom-payload, r=davidtwcobors-0/+2
Report allocation errors as panics OOM is now reported as a panic but with a custom payload type (`AllocErrorPanicPayload`) which holds the layout that was passed to `handle_alloc_error`. This should be review one commit at a time: - The first commit adds `AllocErrorPanicPayload` and changes allocation errors to always be reported as panics. - The second commit removes `#[alloc_error_handler]` and the `alloc_error_hook` API. ACP: https://github.com/rust-lang/libs-team/issues/192 Closes #51540 Closes #51245
2023-04-17Spelling - compilerJosh Soref-1/+1
* account * achieved * advising * always * ambiguous * analysis * annotations * appropriate * build * candidates * cascading * category * character * clarification * compound * conceptually * constituent * consts * convenience * corresponds * debruijn * debug * debugable * debuggable * deterministic * discriminant * display * documentation * doesn't * ellipsis * erroneous * evaluability * evaluate * evaluation * explicitly * fallible * fulfill * getting * has * highlighting * illustrative * imported * incompatible * infringing * initialized * into * intrinsic * introduced * javascript * liveness * metadata * monomorphization * nonexistent * nontrivial * obligation * obligations * offset * opaque * opportunities * opt-in * outlive * overlapping * paragraph * parentheses * poisson * precisely * predecessors * predicates * preexisting * propagated * really * reentrant * referent * responsibility * rustonomicon * shortcircuit * simplifiable * simplifications * specify * stabilized * structurally * suggestibility * translatable * transmuting * two * unclosed * uninhabited * visibility * volatile * workaround Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-04-16Remove #[alloc_error_handler] from the compiler and libraryAmanieu d'Antras-0/+2
2023-03-12Remove `box_syntax` from AST and use in toolsclubby789-0/+2
2023-02-28Remove the `capture_disjoint_fields` featureclubby789-0/+2
2022-09-26replace stabilization placeholdersPietro Albini-1/+1
2022-08-28Remove `register_attr` featureYuki Okushi-0/+3
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
2022-07-13add array tests, cleanup, tidy, and blessRalf Jung-1/+1
2022-07-13remove untagged_union feature gateRalf Jung-0/+3
2022-06-13Rollup merge of #97875 - JohnTitor:rm-infer-static-outlives-requirements, ↵Matthias Krüger-0/+3
r=pnkfelix Remove the `infer_static_outlives_requirements` feature Closes #54185 r? ``@pnkfelix``
2022-06-09Stabilize the `bundle` native library modifierVadim Petrochenkov-0/+3
2022-06-08Remove the `infer_static_outlives_requirements` featureYuki Okushi-0/+3
2022-05-21Remove feature: `crate` visibility modifierJacob Pratt-0/+2
2022-02-24Remove in-band lifetimesMichael Goulet-0/+3
2022-01-28remove allow_fail test flagyuhaixin.hx-0/+2
2021-11-24Create rustdoc_internals feature gateGuillaume Gomez-0/+6
2021-11-15Alphabetize language featuresJacob Pratt-96/+94
This should significantly reduce the frequency of merge conflicts.
2021-09-09Ignore automatically derived impls of `Clone` and `Debug` in dead code analysisFabian Wolff-2/+0
2021-09-07Fix typo in `const_generics` replaced with `adt_const_params` noteMingwei Samuel-1/+1
2021-08-30`feature(const_param_types)` -> `feature(adt_const_params)`lcnr-1/+1
2021-08-30`feature(const_generics)` -> `feature(const_param_types)`lcnr-0/+3
2021-08-30rename const_evaluatable_checked to generic_const_exprsEllen-0/+4
:sparkles:
2021-08-27Introduce `~const`Deadbeef-0/+3
- [x] Removed `?const` and change uses of `?const` - [x] Added `~const` to the AST. It is gated behind const_trait_impl. - [x] Validate `~const` in ast_validation. - [ ] Add enum `BoundConstness` to the HIR. (With variants `NotConst` and `ConstIfConst` allowing future extensions) - [ ] Adjust trait selection and pre-existing code to use `BoundConstness`. - [ ] Optional steps (*for this PR, obviously*) - [ ] Fix #88155 - [ ] Do something with constness bounds in chalk
2021-08-10Replace #[plugin_registrar] with exporting __rustc_plugin_registrarbjorn3-1/+4
2021-08-03rustc: Fill out remaining parts of C-unwind ABIAlex Crichton-0/+5
This commit intends to fill out some of the remaining pieces of the C-unwind ABI. This has a number of other changes with it though to move this design space forward a bit. Notably contained within here is: * On `panic=unwind`, the `extern "C"` ABI is now considered as "may unwind". This fixes a longstanding soundness issue where if you `panic!()` in an `extern "C"` function defined in Rust that's actually UB because the LLVM representation for the function has the `nounwind` attribute, but then you unwind. * Whether or not a function unwinds now mainly considers the ABI of the function instead of first checking the panic strategy. This fixes a miscompile of `extern "C-unwind"` with `panic=abort` because that ABI can still unwind. * The aborting stub for non-unwinding ABIs with `panic=unwind` has been reimplemented. Previously this was done as a small tweak during MIR generation, but this has been moved to a separate and dedicated MIR pass. This new pass will, for appropriate functions and function calls, insert a `cleanup` landing pad for any function call that may unwind within a function that is itself not allowed to unwind. Note that this subtly changes some behavior from before where previously on an unwind which was caught-to-abort it would run active destructors in the function, and now it simply immediately aborts the process. * The `#[unwind]` attribute has been removed and all users in tests and such are now using `C-unwind` and `#![feature(c_unwind)]`. I think this is largely the last piece of the RFC to implement. Unfortunately I believe this is still not stabilizable as-is because activating the feature gate changes the behavior of the existing `extern "C"` ABI in a way that has no replacement. My thinking for how to enable this is that we add support for the `C-unwind` ABI on stable Rust first, and then after it hits stable we change the behavior of the `C` ABI. That way anyone straddling stable/beta/nightly can switch to `C-unwind` safely.
2021-07-28min_type_alias_impl_trait is going to be removed in 1.56Santiago Pastorino-1/+1