Make HasTokens a sub-trait of HasAttrs.#159160
Conversation
Because that's what it is: any type with tokens must also have attrs. This simplifies some trait bounds.
|
The parser was modified, potentially altering the grammar of (stable) Rust cc @fmease |
For context, this wasn't the case until #158942 got merged. Even now we have things like |
|
|
Ah, I see, |
…petrochenkov Make `HasTokens` a sub-trait of `HasAttrs`. Because that's what it is: any type with tokens must also have attrs. This simplifies some trait bounds. r? @petrochenkov
…petrochenkov Make `HasTokens` a sub-trait of `HasAttrs`. Because that's what it is: any type with tokens must also have attrs. This simplifies some trait bounds. r? @petrochenkov
…petrochenkov Make `HasTokens` a sub-trait of `HasAttrs`. Because that's what it is: any type with tokens must also have attrs. This simplifies some trait bounds. r? @petrochenkov
…uwer Rollup of 22 pull requests Successful merges: - #156047 (Fix trait method resolution on an adjusted never type) - #157824 (Comptime inherent impls) - #158235 (Store `DefId` instead of `EiiDecl` in `EiiImplResolution::Known`) - #158723 (Support EII on Windows MSVC) - #158993 (rerun in original typing mode if we meet any opaques in post analysis) - #159160 (Make `HasTokens` a sub-trait of `HasAttrs`.) - #159183 (Introduce InstanceKind::LlvmIntrinsic) - #159251 (Bump rustc-perf submodule) - #155013 (Suggest the `[const] Destruct` bound for type parameters in const functions when missing) - #159155 (unstable book: Document `diagnostic_on_unknown` feature) - #159235 (Add regression test for #95719) - #159243 (inline Once wait and wait_force) - #159255 (Replace shortened type with `_` instead of `...` as placeholder) - #159259 (Add regression test for #144033) - #159265 (bootstrap: skip intrinsic-test when rustfmt is unavailable) - #159269 (disable range-len-try-from.rs on s390x) - #159272 (slice: make swap delegate to swap_unchecked) - #159274 (bootstrap: Rename `std_crates_for_run_make` to `std_crates_for_make_run`) - #159275 (remove obsolete comment) - #159277 (Construct `tokens` for attrs made by `mk_attr_word` and other variants) - #159283 (Remove obsolete verbose flag from deref/ref suggestions) - #159290 (rustc-dev-guide subtree update)
…uwer Rollup of 22 pull requests Successful merges: - #156047 (Fix trait method resolution on an adjusted never type) - #157824 (Comptime inherent impls) - #158235 (Store `DefId` instead of `EiiDecl` in `EiiImplResolution::Known`) - #158723 (Support EII on Windows MSVC) - #158993 (rerun in original typing mode if we meet any opaques in post analysis) - #159160 (Make `HasTokens` a sub-trait of `HasAttrs`.) - #159183 (Introduce InstanceKind::LlvmIntrinsic) - #159251 (Bump rustc-perf submodule) - #155013 (Suggest the `[const] Destruct` bound for type parameters in const functions when missing) - #159155 (unstable book: Document `diagnostic_on_unknown` feature) - #159235 (Add regression test for #95719) - #159243 (inline Once wait and wait_force) - #159255 (Replace shortened type with `_` instead of `...` as placeholder) - #159259 (Add regression test for #144033) - #159265 (bootstrap: skip intrinsic-test when rustfmt is unavailable) - #159269 (disable range-len-try-from.rs on s390x) - #159272 (slice: make swap delegate to swap_unchecked) - #159274 (bootstrap: Rename `std_crates_for_run_make` to `std_crates_for_make_run`) - #159275 (remove obsolete comment) - #159277 (Construct `tokens` for attrs made by `mk_attr_word` and other variants) - #159283 (Remove obsolete verbose flag from deref/ref suggestions) - #159290 (rustc-dev-guide subtree update)
Rollup merge of #159160 - nnethercote:HasAttrs-HasTokens, r=petrochenkov Make `HasTokens` a sub-trait of `HasAttrs`. Because that's what it is: any type with tokens must also have attrs. This simplifies some trait bounds. r? @petrochenkov
Because that's what it is: any type with tokens must also have attrs. This simplifies some trait bounds.
r? @petrochenkov