Mark Tuple and FnPtr traits #[fundamental] - #160181
Merged
Merged
Conversation
Collaborator
|
r? @chenyukang rustbot has assigned @chenyukang. Use Why was this reviewer chosen?The reviewer was selected based on:
|
Member
|
@bors r+ rollup |
Contributor
jhpratt
added a commit
to jhpratt/rust
that referenced
this pull request
Jul 30, 2026
… r=chenyukang Mark `Tuple` and `FnPtr` traits `#[fundamental]` This makes it possible to write certain blanket implementations over these traits that would be impossible otherwise, at the cost of making it a breaking change to add new implementations of these traits for existing types. I doubt we plan to convert existing types into function pointers or tuples, so this seems fine. @rustbot label F-fundamental
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Jul 30, 2026
… r=chenyukang Mark `Tuple` and `FnPtr` traits `#[fundamental]` This makes it possible to write certain blanket implementations over these traits that would be impossible otherwise, at the cost of making it a breaking change to add new implementations of these traits for existing types. I doubt we plan to convert existing types into function pointers or tuples, so this seems fine. @rustbot label F-fundamental
rust-bors Bot
pushed a commit
that referenced
this pull request
Jul 30, 2026
…uwer Rollup of 8 pull requests Successful merges: - #159817 (Rename splat to avoid stable name collisions) - #158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - #159818 (Resolve vars before calling `unnormalized_obligations`) - #160040 (Split function parsing out of `item.rs` to a new module.) - #160044 (Add regression tests for fixed dead-code issues) - #160147 (tests: Remove `-Zthreads` options from tests in `ui/parallel-rustc`) - #160175 (Try to recover less from incorrectly parsed const arg) - #160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`)
jhpratt
added a commit
to jhpratt/rust
that referenced
this pull request
Jul 30, 2026
… r=chenyukang Mark `Tuple` and `FnPtr` traits `#[fundamental]` This makes it possible to write certain blanket implementations over these traits that would be impossible otherwise, at the cost of making it a breaking change to add new implementations of these traits for existing types. I doubt we plan to convert existing types into function pointers or tuples, so this seems fine. @rustbot label F-fundamental
rust-bors Bot
pushed a commit
that referenced
this pull request
Jul 30, 2026
Rollup of 14 pull requests Successful merges: - #159817 (Rename splat to avoid stable name collisions) - #160204 (Sync from portable simd 2026 07 30) - #150885 (Revive L4Re target) - #158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - #160125 (Fix typing mode handling in transmute checks and rustc_dump_layout) - #160152 (Create on-demand CI job for testing EC2 instances) - #159214 (std: improve the documentation of the random feature) - #159818 (Resolve vars before calling `unnormalized_obligations`) - #160040 (Split function parsing out of `item.rs` to a new module.) - #160044 (Add regression tests for fixed dead-code issues) - #160144 (renovate: group lockfiles PRs) - #160149 (Fix Windows on Arm PAC default) - #160175 (Try to recover less from incorrectly parsed const arg) - #160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`)
rust-bors Bot
pushed a commit
that referenced
this pull request
Jul 31, 2026
…uwer Rollup of 25 pull requests Successful merges: - #160204 (Sync from portable simd 2026 07 30) - #138230 (Add `raw_borrows_via_references` lint) - #158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - #160015 (refactor(mir-transform): Merge `can_be_overridden`, `is_required` and `is_enabled` into one) - #160031 (std: make positioned I/O unsupported on VxWorks) - #160125 (Fix typing mode handling in transmute checks and rustc_dump_layout) - #160152 (Create on-demand CI job for testing EC2 instances) - #160232 (rustdoc: fix ICE when a grapheme cluster joins a Prepend-class character to `_` or `:`) - #159214 (std: improve the documentation of the random feature) - #159818 (Resolve vars before calling `unnormalized_obligations`) - #159955 (Stop using higher-order macros to declare arenas) - #159958 (Fix avoid cycle for self referential return type notation) - #160040 (Split function parsing out of `item.rs` to a new module.) - #160044 (Add regression tests for fixed dead-code issues) - #160144 (renovate: group lockfiles PRs) - #160149 (Fix Windows on Arm PAC default) - #160164 (Derive `GenericTypeVisitable` for `RegionConstraint`) - #160175 (Try to recover less from incorrectly parsed const arg) - #160177 (A few more "predicate"-to-"clause" renamings) - #160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`) - #160192 (Fix ICE for parsing issue with a closing brace) - #160209 (bootstrap: Remove method `Subcommand::kind`) - #160221 (Remove `Copy` supertrait from `VaList`) - #160223 (interpret: rename validate_operand → validate_place) - #160234 (Always use short ty path for call with missing arguments suggestion)
rust-bors Bot
pushed a commit
that referenced
this pull request
Jul 31, 2026
…uwer Rollup of 25 pull requests Successful merges: - #160204 (Sync from portable simd 2026 07 30) - #138230 (Add `raw_borrows_via_references` lint) - #158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - #160015 (refactor(mir-transform): Merge `can_be_overridden`, `is_required` and `is_enabled` into one) - #160031 (std: make positioned I/O unsupported on VxWorks) - #160125 (Fix typing mode handling in transmute checks and rustc_dump_layout) - #160152 (Create on-demand CI job for testing EC2 instances) - #160232 (rustdoc: fix ICE when a grapheme cluster joins a Prepend-class character to `_` or `:`) - #159214 (std: improve the documentation of the random feature) - #159818 (Resolve vars before calling `unnormalized_obligations`) - #159955 (Stop using higher-order macros to declare arenas) - #159958 (Fix avoid cycle for self referential return type notation) - #160040 (Split function parsing out of `item.rs` to a new module.) - #160044 (Add regression tests for fixed dead-code issues) - #160144 (renovate: group lockfiles PRs) - #160149 (Fix Windows on Arm PAC default) - #160164 (Derive `GenericTypeVisitable` for `RegionConstraint`) - #160175 (Try to recover less from incorrectly parsed const arg) - #160177 (A few more "predicate"-to-"clause" renamings) - #160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`) - #160192 (Fix ICE for parsing issue with a closing brace) - #160209 (bootstrap: Remove method `Subcommand::kind`) - #160221 (Remove `Copy` supertrait from `VaList`) - #160223 (interpret: rename validate_operand → validate_place) - #160234 (Always use short ty path for call with missing arguments suggestion)
rust-timer
added a commit
that referenced
this pull request
Jul 31, 2026
Rollup merge of #160181 - Jules-Bertholet:fnptr-fundamental, r=chenyukang Mark `Tuple` and `FnPtr` traits `#[fundamental]` This makes it possible to write certain blanket implementations over these traits that would be impossible otherwise, at the cost of making it a breaking change to add new implementations of these traits for existing types. I doubt we plan to convert existing types into function pointers or tuples, so this seems fine. @rustbot label F-fundamental
RalfJung
pushed a commit
to RalfJung/miri
that referenced
this pull request
Jul 31, 2026
…uwer Rollup of 25 pull requests Successful merges: - rust-lang/rust#160204 (Sync from portable simd 2026 07 30) - rust-lang/rust#138230 (Add `raw_borrows_via_references` lint) - rust-lang/rust#158057 (Don't escape U+FF9E and U+FF9F in `escape_debug_ext`) - rust-lang/rust#160015 (refactor(mir-transform): Merge `can_be_overridden`, `is_required` and `is_enabled` into one) - rust-lang/rust#160031 (std: make positioned I/O unsupported on VxWorks) - rust-lang/rust#160125 (Fix typing mode handling in transmute checks and rustc_dump_layout) - rust-lang/rust#160152 (Create on-demand CI job for testing EC2 instances) - rust-lang/rust#160232 (rustdoc: fix ICE when a grapheme cluster joins a Prepend-class character to `_` or `:`) - rust-lang/rust#159214 (std: improve the documentation of the random feature) - rust-lang/rust#159818 (Resolve vars before calling `unnormalized_obligations`) - rust-lang/rust#159955 (Stop using higher-order macros to declare arenas) - rust-lang/rust#159958 (Fix avoid cycle for self referential return type notation) - rust-lang/rust#160040 (Split function parsing out of `item.rs` to a new module.) - rust-lang/rust#160044 (Add regression tests for fixed dead-code issues) - rust-lang/rust#160144 (renovate: group lockfiles PRs) - rust-lang/rust#160149 (Fix Windows on Arm PAC default) - rust-lang/rust#160164 (Derive `GenericTypeVisitable` for `RegionConstraint`) - rust-lang/rust#160175 (Try to recover less from incorrectly parsed const arg) - rust-lang/rust#160177 (A few more "predicate"-to-"clause" renamings) - rust-lang/rust#160181 (Mark `Tuple` and `FnPtr` traits `#[fundamental]`) - rust-lang/rust#160192 (Fix ICE for parsing issue with a closing brace) - rust-lang/rust#160209 (bootstrap: Remove method `Subcommand::kind`) - rust-lang/rust#160221 (Remove `Copy` supertrait from `VaList`) - rust-lang/rust#160223 (interpret: rename validate_operand → validate_place) - rust-lang/rust#160234 (Always use short ty path for call with missing arguments suggestion)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This makes it possible to write certain blanket implementations over these traits that would be impossible otherwise, at the cost of making it a breaking change to add new implementations of these traits for existing types. I doubt we plan to convert existing types into function pointers or tuples, so this seems fine.
@rustbot label F-fundamental