Skip to content

Stabilize fN::BITS - #154065

Open
Apersoma wants to merge 2 commits into
rust-lang:mainfrom
Apersoma:stabilize-fN-bits
Open

Stabilize fN::BITS#154065
Apersoma wants to merge 2 commits into
rust-lang:mainfrom
Apersoma:stabilize-fN-bits

Conversation

@Apersoma

@Apersoma Apersoma commented Mar 19, 2026

Copy link
Copy Markdown
Contributor

View all comments

Tracking issue: #151073
Closes: #151073

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Mar 19, 2026
@rustbot

rustbot commented Mar 19, 2026

Copy link
Copy Markdown
Collaborator

r? @scottmcm

rustbot has assigned @scottmcm.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: @scottmcm, libs
  • @scottmcm, libs expanded to 8 candidates
  • Random selection from Mark-Simulacrum, scottmcm

@rustbot

rustbot commented Mar 19, 2026

Copy link
Copy Markdown
Collaborator

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

cc @tgross35

@rustbot rustbot added the A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) label Mar 19, 2026
@tgross35 tgross35 assigned tgross35 and unassigned scottmcm Mar 19, 2026
@tgross35

Copy link
Copy Markdown
Contributor

This has only been around since January but it seems pretty unobjectionable to have. However, this does conflict with a constant in use in the ecosystem (showed up in the implementation PR) so we need to take a look at crater.

@bors try

@rustbot label +I-libs-api-nominated

@rustbot rustbot added the I-libs-api-nominated [DEPRECATED; DO NOT USE] label Mar 19, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Mar 19, 2026
@rust-bors

rust-bors Bot commented Mar 19, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 0abe69e (0abe69e6c16114311cc2700e972492e64d69c28f, parent: 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320)

@tgross35

Copy link
Copy Markdown
Contributor

Doing a run with tests in case somebody has a different value for BITS for some reason.

@craterbot run mode=build-and-test

@craterbot

Copy link
Copy Markdown
Collaborator

👌 Experiment pr-154065 created and queued.
🤖 Automatically detected try build 0abe69e
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 19, 2026
@Amanieu Amanieu removed the I-libs-api-nominated [DEPRECATED; DO NOT USE] label Mar 24, 2026
@Amanieu

Amanieu commented Mar 24, 2026

Copy link
Copy Markdown
Member

FCP started in #151073

@tgross35

Copy link
Copy Markdown
Contributor

@Apersoma please squash the commits and give it a reasonable message, the first commit just says "cmplt" (we don't have squash merging on this repo).

@craterbot

Copy link
Copy Markdown
Collaborator

🚧 Experiment pr-154065 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot

Copy link
Copy Markdown
Collaborator

🎉 Experiment pr-154065 is completed!
📊 297 regressed and 292 fixed (857798 total)
📊 132042 spurious results on the retry-regressed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-154065/retry-regressed-list.txt

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Mar 28, 2026
@tgross35

Copy link
Copy Markdown
Contributor

@craterbot

Copy link
Copy Markdown
Collaborator

👌 Experiment pr-154065-1 created and queued.
🤖 Automatically detected try build 0abe69e
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 28, 2026

@tgross35 tgross35 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rust-bors

rust-bors Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 2448f7d has been approved by tgross35

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Aug 11, 2026
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Aug 11, 2026
@JonathanBrouwer

JonathanBrouwer commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

💔 I suspect this PR failed tests as part of a rollup
@bors r-

After fixing the problem, consider running a try job for the failed job before re-approving.

Failed ./x check locally, I will rerun PR ci which should show the failure

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/float/sub.rs:6:69
   |
 6 |         crate::float::add::__addhf3(a, f16::from_bits(b.to_bits() ^ f16::SIGN_MASK))
   |                                                                     ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
   = note: `#[warn(unstable_name_collisions)]` (part of `#[warn(future_incompatible)]`) on by default
help: use the fully qualified path to the associated const
   |
 6 -         crate::float::add::__addhf3(a, f16::from_bits(b.to_bits() ^ f16::SIGN_MASK))
 6 +         crate::float::add::__addhf3(a, f16::from_bits(b.to_bits() ^ <f16 as float_traits::Float>::SIGN_MASK))
   |

@rust-bors rust-bors Bot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 11, 2026
@rust-bors

rust-bors Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

This pull request was unapproved.

This PR was contained in a rollup (#160947), which was unapproved.

View changes since this unapproval

@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 11, 2026
@rust-bors

rust-bors Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

This PR was contained in a rollup (#160947), which was closed.

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Aug 11, 2026
@rustbot

rustbot commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

⚠️ Warning ⚠️

@tgross35

Copy link
Copy Markdown
Contributor

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 11, 2026
@rustbot

rustbot commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@nia-e nia-e closed this Aug 11, 2026
@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 11, 2026
@nia-e nia-e reopened this Aug 11, 2026
@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Aug 11, 2026
@nia-e

nia-e commented Aug 11, 2026

Copy link
Copy Markdown
Member

not me fat-fingering "unsubscribe". oops!

@JonathanBrouwer JonathanBrouwer added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 11, 2026
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job x86_64-gnu-next-trait-solver-polonius failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[RUSTC-TIMING] build_script_build test:false 0.244
warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/float/sub.rs:6:69
   |
 6 |         crate::float::add::__addhf3(a, f16::from_bits(b.to_bits() ^ f16::SIGN_MASK))
   |                                                                     ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
   = note: `#[warn(unstable_name_collisions)]` (part of `#[warn(future_incompatible)]`) on by default
help: use the fully qualified path to the associated const
   |
 6 -         crate::float::add::__addhf3(a, f16::from_bits(b.to_bits() ^ f16::SIGN_MASK))
 6 +         crate::float::add::__addhf3(a, f16::from_bits(b.to_bits() ^ <f16 as float_traits::Float>::SIGN_MASK))
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/float/sub.rs:11:69
   |
11 |         crate::float::add::__addsf3(a, f32::from_bits(b.to_bits() ^ f32::SIGN_MASK))
   |                                                                     ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
11 -         crate::float::add::__addsf3(a, f32::from_bits(b.to_bits() ^ f32::SIGN_MASK))
11 +         crate::float::add::__addsf3(a, f32::from_bits(b.to_bits() ^ <f32 as float_traits::Float>::SIGN_MASK))
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f32::<impl f32>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/float/sub.rs:16:69
   |
16 |         crate::float::add::__adddf3(a, f64::from_bits(b.to_bits() ^ f64::SIGN_MASK))
   |                                                                     ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
16 -         crate::float::add::__adddf3(a, f64::from_bits(b.to_bits() ^ f64::SIGN_MASK))
16 +         crate::float::add::__adddf3(a, f64::from_bits(b.to_bits() ^ <f64 as float_traits::Float>::SIGN_MASK))
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f64::<impl f64>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/float/sub.rs:27:51
   |
27 |         __addtf3(a, f128::from_bits(b.to_bits() ^ f128::SIGN_MASK))
   |                                                   ^^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
27 -         __addtf3(a, f128::from_bits(b.to_bits() ^ f128::SIGN_MASK))
27 +         __addtf3(a, f128::from_bits(b.to_bits() ^ <f128 as float_traits::Float>::SIGN_MASK))
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f128::<impl f128>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

---
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
279 | |             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
    | |                                                                    ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
279 -             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
279 +             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | <f16 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:280:70
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
280 | |             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
    | |                                                                      ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
280 -             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
280 +             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | <f16 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:299:43
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
299 | |             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
    | |                                           ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
299 -             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
299 +             const EXP_MASK: Self::Int = !(<f16 as float_traits::Float>::SIGN_MASK | Self::SIG_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:279:68
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
279 | |             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
    | |                                                                    ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
279 -             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
279 +             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | <f32 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f32::<impl f32>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:280:70
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
280 | |             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
    | |                                                                      ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
280 -             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
280 +             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | <f32 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f32::<impl f32>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:299:43
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
299 | |             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
    | |                                           ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
299 -             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
299 +             const EXP_MASK: Self::Int = !(<f32 as float_traits::Float>::SIGN_MASK | Self::SIG_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f32::<impl f32>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:279:68
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
279 | |             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
    | |                                                                    ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
279 -             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
279 +             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | <f64 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f64::<impl f64>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:280:70
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
280 | |             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
    | |                                                                      ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
280 -             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
280 +             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | <f64 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f64::<impl f64>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:299:43
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
299 | |             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
    | |                                           ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
299 -             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
299 +             const EXP_MASK: Self::Int = !(<f64 as float_traits::Float>::SIGN_MASK | Self::SIG_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f64::<impl f64>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:279:68
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
279 | |             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
    | |                                                                    ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
279 -             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | Self::SIGN_MASK);
279 +             const NEG_NAN: Self = $from_bits($to_bits(Self::NAN) | <f128 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f128::<impl f128>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:280:70
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
280 | |             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
    | |                                                                      ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
280 -             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | Self::SIGN_MASK);
280 +             const NEG_SNAN: Self = $from_bits($to_bits(Self::SNAN) | <f128 as float_traits::Float>::SIGN_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f128::<impl f128>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: an associated constant with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/float_traits.rs:299:43
    |
238 | / macro_rules! float_impl {
239 | |     (
240 | |         $ty:ident,
241 | |         $ity:ident,
...   |
299 | |             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
    | |                                           ^^^^^^^^^^^^^^^
...   |
374 | |     };
375 | | }
    | |_- in this expansion of `float_impl!`
---
    = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
    = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
    |
299 -             const EXP_MASK: Self::Int = !(Self::SIGN_MASK | Self::SIG_MASK);
299 +             const EXP_MASK: Self::Int = !(<f128 as float_traits::Float>::SIGN_MASK | Self::SIG_MASK);
    |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f128::<impl f128>::SIGN_MASK`
   --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
    |
 37 + #![feature(float_masks)]
    |

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:28
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                            ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
75 |   impl_narrowing_div_primitive!(u16);
   |   ---------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:55
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                                                       ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
75 |   impl_narrowing_div_primitive!(u16);
   |   ---------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:28
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                            ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
76 |   impl_narrowing_div_primitive!(u32);
   |   ---------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:55
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                                                       ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
76 |   impl_narrowing_div_primitive!(u32);
   |   ---------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:28
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                            ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
77 |   impl_narrowing_div_primitive!(u64);
   |   ---------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:55
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                                                       ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
77 |   impl_narrowing_div_primitive!(u64);
   |   ---------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:28
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                            ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
78 |   impl_narrowing_div_primitive!(u128);
   |   ----------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits/narrowing_div.rs:37:55
   |
30 | / macro_rules! impl_narrowing_div_primitive {
31 | |     ($D:ident) => {
32 | |         impl NarrowingDiv for $D {
33 | |             unsafe fn unchecked_narrowing_div_rem(self, n: Self::H) -> (Self::H, Self::H) {
...  |
37 | |                 ((self / n.widen()).cast(), (self % n.widen()).cast())
   | |                                                       ^^^^^
...  |
40 | |     };
41 | | }
   | |_- in this expansion of `impl_narrowing_div_primitive!`
...
78 |   impl_narrowing_div_primitive!(u128);
   |   ----------------------------------- in this macro invocation
   |
   = help: call with fully qualified syntax `HInt::widen(...)` to keep using the current method
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:26
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                          ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: a method with this name may be added to the standard library in the future
   --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/support/int_traits.rs:385:51
    |
369 | / macro_rules! impl_h_int {
370 | |     ($($H:ident $uH:ident $X:ident),*) => {
371 | |         $(
372 | |             impl HInt for $H {
...   |
385 | |                     self.widen().wrapping_mul(rhs.widen())
    | |                                                   ^^^^^
...   |
392 | |     };
393 | | }
    | |_- in this expansion of `impl_h_int!`
---

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/acosh.rs:15:15
   |
15 |     if (ux & !f64::SIGN_MASK) < 2_f64.to_bits() {
   |               ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
15 -     if (ux & !f64::SIGN_MASK) < 2_f64.to_bits() {
15 +     if (ux & !<f64 as float_traits::Float>::SIGN_MASK) < 2_f64.to_bits() {
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f64::<impl f64>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/acoshf.rs:15:15
   |
15 |     if (ux & !f32::SIGN_MASK) < 2_f32.to_bits() {
   |               ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
15 -     if (ux & !f32::SIGN_MASK) < 2_f32.to_bits() {
15 +     if (ux & !<f32 as float_traits::Float>::SIGN_MASK) < 2_f32.to_bits() {
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f32::<impl f32>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/cbrt.rs:49:29
   |
49 |         let ix: u64 = hx & !f64::SIGN_MASK;
   |                             ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
49 -         let ix: u64 = hx & !f64::SIGN_MASK;
49 +         let ix: u64 = hx & !<f64 as float_traits::Float>::SIGN_MASK;
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f64::<impl f64>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/fmaf16.rs:14:29
   |
14 |     let ix = x.to_bits() & !f16::SIGN_MASK;
   |                             ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
14 -     let ix = x.to_bits() & !f16::SIGN_MASK;
14 +     let ix = x.to_bits() & !<f16 as float_traits::Float>::SIGN_MASK;
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/fmaf16.rs:15:29
   |
15 |     let iy = y.to_bits() & !f16::SIGN_MASK;
   |                             ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
15 -     let iy = y.to_bits() & !f16::SIGN_MASK;
15 +     let iy = y.to_bits() & !<f16 as float_traits::Float>::SIGN_MASK;
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

warning: an associated constant with this name may be added to the standard library in the future
  --> library/compiler-builtins/compiler-builtins/src/math/../../../libm/src/math/fmaf16.rs:16:29
   |
16 |     let iz = z.to_bits() & !f16::SIGN_MASK;
   |                             ^^^^^^^^^^^^^^
   |
   = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
   = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
help: use the fully qualified path to the associated const
   |
16 -     let iz = z.to_bits() & !f16::SIGN_MASK;
16 +     let iz = z.to_bits() & !<f16 as float_traits::Float>::SIGN_MASK;
   |
help: add `#![feature(float_masks)]` to the crate attributes to enable `f16::<impl f16>::SIGN_MASK`
  --> library/compiler-builtins/compiler-builtins/src/lib.rs:37:1
   |
37 + #![feature(float_masks)]
   |

Important

For more information how to resolve CI failures of this job, visit this link.

@clarfonthey clarfonthey removed the I-libs-api-nominated [DEPRECATED; DO NOT USE] label Aug 12, 2026
@rust-bors

rust-bors Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

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

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

Labels

A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) relnotes Marks issues that should be documented in the release notes of the next release. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tracking Issue for fN::BITS