Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move yield expressions behind their own feature gate #138081

Merged
merged 1 commit into from
Mar 7, 2025

Conversation

eholk
Copy link
Contributor

@eholk eholk commented Mar 6, 2025

In order to make progress with the iter! macro (e.g. in #137725), we need yield expressions to be available without the coroutines feature. This PR moves yield to be guarded by the yield_expr feature so that we can stabilize that independently (or at least, concurrently with the iter_macro feature). Note that once yield is stable, it will still be an error to use yield expressions outside something like a generator or coroutine, and these features remain unstable.

r? @oli-obk

@rustbot rustbot added PG-exploit-mitigations Project group: Exploit mitigations S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Mar 6, 2025
@rustbot
Copy link
Collaborator

rustbot commented Mar 6, 2025

Some changes occurred in src/tools/rustfmt

cc @rust-lang/rustfmt

Some changes occurred in compiler/rustc_codegen_gcc

cc @antoyo, @GuillaumeGomez

Some changes occurred in src/tools/clippy

cc @rust-lang/clippy

Some changes occurred in coverage tests.

cc @Zalathar

Some changes occurred in tests/ui/sanitizer

cc @rust-lang/project-exploit-mitigations, @rcvalle

The Miri subtree was changed

cc @rust-lang/miri

rust-analyzer is developed in its own repository. If possible, consider making this change to rust-lang/rust-analyzer instead.

cc @rust-lang/rust-analyzer

@rust-log-analyzer

This comment has been minimized.

@oli-obk
Copy link
Contributor

oli-obk commented Mar 6, 2025

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Mar 6, 2025

📌 Commit 432e1c3 has been approved by oli-obk

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 6, 2025
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 7, 2025
…mpiler-errors

Rollup of 17 pull requests

Successful merges:

 - rust-lang#137827 (Add timestamp to unstable feature usage metrics)
 - rust-lang#138041 (bootstrap and compiletest: Use `size_of_val` from the prelude instead of imported)
 - rust-lang#138046 (trim channel value in `get_closest_merge_commit`)
 - rust-lang#138053 (Increase the max. custom try jobs requested to `20`)
 - rust-lang#138061 (triagebot: add a `compiler_leads` ad-hoc group)
 - rust-lang#138064 (Remove - from xtensa targets cpu names)
 - rust-lang#138075 (Use final path segment for diagnostic)
 - rust-lang#138078 (Reduce the noise of bootstrap changelog warnings in --dry-run mode)
 - rust-lang#138081 (Move `yield` expressions behind their own feature gate)
 - rust-lang#138090 (`librustdoc`: flatten nested ifs)
 - rust-lang#138092 (Re-add `DynSend` and `DynSync` impls for `TyCtxt`)
 - rust-lang#138094 (a small borrowck cleanup)
 - rust-lang#138098 (Stabilize feature `const_copy_from_slice`)
 - rust-lang#138103 (Git ignore citool's target directory)
 - rust-lang#138105 (Fix broken link to Miri intrinsics in documentation)
 - rust-lang#138108 (Mention me (WaffleLapkin) when changes to `rustc_codegen_ssa` occur)
 - rust-lang#138117 ([llvm/PassWrapper] use `size_t` when building arg strings)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit bc45cdb into rust-lang:master Mar 7, 2025
6 checks passed
@rustbot rustbot added this to the 1.87.0 milestone Mar 7, 2025
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Mar 7, 2025
Rollup merge of rust-lang#138081 - eholk:yield-feature, r=oli-obk

Move `yield` expressions behind their own feature gate

In order to make progress with the `iter!` macro (e.g. in rust-lang#137725), we need `yield` expressions to be available without the `coroutines` feature. This PR moves `yield` to be guarded by the `yield_expr` feature so that we can stabilize that independently (or at least, concurrently with the `iter_macro` feature). Note that once `yield` is stable, it will still be an error to use `yield` expressions outside something like a generator or coroutine, and these features remain unstable.

r? `@oli-obk`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PG-exploit-mitigations Project group: Exploit mitigations S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants