Skip to content

[WIP] #[fused] - #155733

Draft
GrigorenkoPV wants to merge 5 commits into
rust-lang:mainfrom
GrigorenkoPV:fuse
Draft

[WIP] #[fused]#155733
GrigorenkoPV wants to merge 5 commits into
rust-lang:mainfrom
GrigorenkoPV:fuse

Conversation

@GrigorenkoPV

@GrigorenkoPVGrigorenkoPV commented Apr 24, 2026

Copy link
Copy Markdown
Contributor

TODO:

  • TODOs in code
  • Attribute validation
  • mir tests
  • support async blocks & async closures
  • A proper tracking issue, if this does not get rejected

@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) PG-exploit-mitigations Project group: Exploit mitigations S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Apr 24, 2026
@rust-log-analyzer

This comment has been minimized.

@rust-bors

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-bors

This comment has been minimized.

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job pr-check-2 failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)
 | |
| in this expansion of `find_attr!` (#1)
| in this expansion of `$crate::find_attr!` (#2)
...
81 | $crate::find_attr!($attributes_list, $pattern $(if $guard)? => ()).is_some()
| ------------------------------------------------------------------ in this macro invocation (#2)
...
89 | let i: &rustc_hir::Attribute = i;
| --------------------- ^ expected `rustc_hir::Attribute`, found `rustc_ast::Attribute`
| |
| expected due to this
|
::: compiler/rustc_ast_lowering/src/expr/closure.rs:41:21
|
41 | find_attr!(&e.attrs, Fused(_)),
| ------------------------------ in this macro invocation (#1)
|
= note: `rustc_ast::Attribute` and `rustc_hir::Attribute` have similar names, but are actually distinct types
note: `rustc_ast::Attribute` is defined in crate `rustc_ast`
--> compiler/rustc_ast/src/ast.rs:3404:1
---
| |
| in this expansion of `find_attr!` (#1)
| in this expansion of `$crate::find_attr!` (#2)
...
81 | $crate::find_attr!($attributes_list, $pattern $(if $guard)? => ()).is_some()
| ------------------------------------------------------------------ in this macro invocation (#2)
...
89 | let i: &rustc_hir::Attribute = i;
| --------------------- ^ expected `&Attribute`, found `Attribute`
| |
| expected due to this
|
::: compiler/rustc_ast_lowering/src/expr.rs:359:70
|
359 | ... hir::CoroutineDesugaring::Async { fused: find_attr!(e.attrs, Fused(_)) }
| ----------------------------- in this macro invocation (#1)
For more information about this error, try `rustc --explain E0308`.
[RUSTC-TIMING] rustc_ast_lowering test:false 1.470
error: could not compile `rustc_ast_lowering` (lib) due to 2 previous errors

@rust-bors

rust-borsBot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

☔ The latest upstream changes (presumably #156649) made this pull request unmergeable. Please resolve the merge conflicts.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-query-systemArea: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html)PG-exploit-mitigationsProject group: Exploit mitigationsS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@GrigorenkoPV@rust-log-analyzer@rustbot