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
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