-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Port several trait/coherence-related attributes the new attribute system #143403
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
Conversation
Some changes occurred in compiler/rustc_attr_parsing Some changes occurred in compiler/rustc_attr_data_structures Some changes occurred in compiler/rustc_passes/src/check_attr.rs |
@rustbot blocked |
☔ The latest upstream changes (presumably #143434) made this pull request unmergeable. Please resolve the merge conflicts. |
3ffba3f
to
5e883ef
Compare
@rustbot ready |
☔ The latest upstream changes (presumably #143459) made this pull request unmergeable. Please resolve the merge conflicts. |
5e883ef
to
7acc628
Compare
☔ The latest upstream changes (presumably #143507) made this pull request unmergeable. Please resolve the merge conflicts. |
7acc628
to
da5ea0a
Compare
@bors r+ rollup |
💡 This pull request was already approved, no need to approve it again.
|
Rollup of 8 pull requests Successful merges: - #143402 (Port several linking (linkage?) related attributes the new attribute system ) - #143555 (Don't mark `#[target_feature]` safe fns as unsafe in rustdoc JSON.) - #143593 (Port #[rustc_dummy]) - #143600 (Update intro blurb in `wasm32-wasip1` docs) - #143603 (Clarify the meaning of `AttributeOrder::KeepFirst` and `AttributeOrder::KeepLast`) - #143606 (configure.py: Write last key in each section) - #143620 (fix: Remove newline from multiple crate versions note) - #143622 (Add target maintainer information for mips64-unknown-linux-muslabi64) Failed merges: - #143403 (Port several trait/coherence-related attributes the new attribute system) r? `@ghost` `@rustbot` modify labels: rollup
da5ea0a
to
e584ed0
Compare
@rustbot ready |
@bors r+ |
…jdonszelmann Port several trait/coherence-related attributes the new attribute system Part of rust-lang#131229 This ports: - `#[const_trait]` - `#[rustc_deny_explicit_impl]` - `#[rustc_do_not_implement_via_object]` - `#[rustc_coinductive]` - `#[type_const]` - `#[rustc_specialization_trait]` - `#[rustc_unsafe_specialization_marker]` - `#[marker]` - `#[fundamental]` - `#[rustc_paren_sugar]` - `#[rustc_allow_incoherent_impl]` - `#[rustc_coherence_is_core]` This also changes `#[marker]` to error on duplicates instead of warning. cc rust-lang#142838, but I don't think it matters too much, since it's unstable. r? `@oli-obk`
Rollup of 10 pull requests Successful merges: - #142301 (tests: Fix duplicated-path-in-error fail with musl) - #143403 (Port several trait/coherence-related attributes the new attribute system) - #143633 (fix: correct assertion to check for 'noinline' attribute presence before removal) - #143647 (Clarify and expand documentation for std::sys_common dependency structure) - #143716 (compiler: doc/comment some codegen-for-functions interfaces) - #143747 (Add target maintainer information for aarch64-unknown-linux-musl) - #143759 (Fix typos in function names in the `target_feature` test) - #143767 (Bump `src/tools/x` to Edition 2024 and some cleanups) - #143769 (Remove support for SwitchInt edge effects in backward dataflow) - #143770 (build-helper: clippy fixes) r? `@ghost` `@rustbot` modify labels: rollup
Rollup of 9 pull requests Successful merges: - #143403 (Port several trait/coherence-related attributes the new attribute system) - #143633 (fix: correct assertion to check for 'noinline' attribute presence before removal) - #143647 (Clarify and expand documentation for std::sys_common dependency structure) - #143716 (compiler: doc/comment some codegen-for-functions interfaces) - #143747 (Add target maintainer information for aarch64-unknown-linux-musl) - #143759 (Fix typos in function names in the `target_feature` test) - #143767 (Bump `src/tools/x` to Edition 2024 and some cleanups) - #143769 (Remove support for SwitchInt edge effects in backward dataflow) - #143770 (build-helper: clippy fixes) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of #143403 - GrigorenkoPV:attributes/traits, r=jdonszelmann Port several trait/coherence-related attributes the new attribute system Part of #131229 This ports: - `#[const_trait]` - `#[rustc_deny_explicit_impl]` - `#[rustc_do_not_implement_via_object]` - `#[rustc_coinductive]` - `#[type_const]` - `#[rustc_specialization_trait]` - `#[rustc_unsafe_specialization_marker]` - `#[marker]` - `#[fundamental]` - `#[rustc_paren_sugar]` - `#[rustc_allow_incoherent_impl]` - `#[rustc_coherence_is_core]` This also changes `#[marker]` to error on duplicates instead of warning. cc #142838, but I don't think it matters too much, since it's unstable. r? ``@oli-obk``
@rust-timer build 4967043 Checking for #143810. The bootstrap regression is quite likely caused by this PR. |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (4967043): comparison URL. Overall result: ❌✅ regressions and improvements - please read the text belowBenchmarking this pull request means it may be perf-sensitive – we'll automatically label it not fit for rolling up. You can override this, but we strongly advise not to, due to possible changes in compiler perf. Next Steps: If you can justify the regressions found in this try perf run, please do so in sufficient writing along with @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -1.4%, secondary -0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -2.6%, secondary -6.6%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 462.356s -> 465.002s (0.57%) |
Yeah this is definitely the cause of the regression from the rollup. The bootstrap regression is interesting, I wonder if the trait consts or the big enums somehow stress rustc a lot.. or maybe it's the complex nested parser types. |
Part of #131229
This ports:
#[const_trait]
#[rustc_deny_explicit_impl]
#[rustc_do_not_implement_via_object]
#[rustc_coinductive]
#[type_const]
#[rustc_specialization_trait]
#[rustc_unsafe_specialization_marker]
#[marker]
#[fundamental]
#[rustc_paren_sugar]
#[rustc_allow_incoherent_impl]
#[rustc_coherence_is_core]
This also changes
#[marker]
to error on duplicates instead of warning.cc #142838, but I don't think it matters too much, since it's unstable.
r? @oli-obk