Skip to content

Conversation

@tgross35
Copy link
Contributor

@tgross35 tgross35 commented Apr 29, 2025

Trying a few blocked things based on top of #140323.

r? @ghost

try-job: aarch64-gnu
try-job: i686-gnu-1
try-job: i686-msvc-1
try-job: test-various
try-job: x86_64-gnu
try-job: x86_64-msvc-ext2
try-job: x86_64-gnu-llvm-19-1
try-job: x86_64-gnu-llvm-20-1

tgross35 and others added 5 commits April 27, 2025 19:58
Support for `f16` and `f128` is varied across targets, backends, and
backend versions. Eventually we would like to reach a point where all
backends support these approximately equally, but until then we have to
work around some of these nuances of support being observable.

Introduce the `cfg_target_has_reliable_f16_f128` internal feature, which
provides the following new configuration gates:

* `cfg(target_has_reliable_f16)`
* `cfg(target_has_reliable_f16_math)`
* `cfg(target_has_reliable_f128)`
* `cfg(target_has_reliable_f128_math)`

`reliable_f16` and `reliable_f128` indicate that basic arithmetic for
the type works correctly. The `_math` versions indicate that anything
relying on `libm` works correctly, since sometimes this hits a separate
class of codegen bugs.

These options match configuration set by the build script at [1]. The
logic for LLVM support is duplicated as-is from the same script. There
are a few possible updates that will come as a follow up.

The config introduced here is not planned to ever become stable, it is
only intended to replace the build scripts for `std` tests and
`compiler-builtins` that don't have any way to configure based on the
codegen backend.

MCP: rust-lang/compiler-team#866
Closes: rust-lang/compiler-team#866

[1]: https://github.com/rust-lang/rust/blob/555e1d0386f024a8359645c3217f4b3eae9be042/library/std/build.rs#L84-L186
New compiler configuration has been introduced that is designed to
replace the build script configuration `reliable_f16`, `reliable_f128`,
`reliable_f16_math`, and `reliable_f128_math`. Do this replacement here,
which allows us to clean up `std`'s build script.

All tests are gated by `#[cfg(bootstrap)]` rather than doing a more
complicated `cfg(bootstrap)` / `cfg(not(bootstrap))` split since the
next beta split is within two weeks.
Use the existing Lemire (decimal -> float) and Dragon / Grisu algorithms
(float -> decimal) to add support for `f16`. This allows updating the
implementation for `Display` to the expected behavior for `Display`
(currently it prints the a hex bitwise representation) and adds a
`FromStr` implementation.

(cherry picked from commit 4c57b48)
Extend the existing tests for `f32` and `f64` with versions that include
`f16`'s new printing and parsing implementations.

Co-authored-by: Speedy_Lex <alex.ciocildau@gmail.com>
(cherry picked from commit c4c7d6c)
This requires a fix to the subnormal test to cap the maximum allowed
value within the maximum mantissa.

(cherry picked from commit cb40d2d)
@rustbot rustbot added A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Apr 29, 2025
@tgross35
Copy link
Contributor Author

@bors try

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 29, 2025
[experiment] reliable float experiments

Trying a few blocked things based on top of rust-lang#140323.

r? `@ghost`

try-job: aarch64-gnu
try-job: i686-gnu-1
try-job: i686-msvc-1
try-job: test-various
try-job: x86_64-gnu
try-job: x86_64-msvc-ext2
@bors
Copy link
Collaborator

bors commented Apr 29, 2025

⌛ Trying commit e56745d with merge fdb4623...

@tgross35
Copy link
Contributor Author

@bors try

@bors
Copy link
Collaborator

bors commented Apr 29, 2025

⌛ Trying commit e56745d with merge bd15dd1...

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 29, 2025
[experiment] reliable float experiments

Trying a few blocked things based on top of rust-lang#140323.

r? `@ghost`

try-job: x86_64-gnu-llvm-19-1
try-job: x86_64-gnu-llvm-20-1
@rust-log-analyzer

This comment has been minimized.

@tgross35 tgross35 force-pushed the float-experiments branch from e56745d to 67a01a2 Compare April 29, 2025 04:29
@tgross35
Copy link
Contributor Author

@bors try

@bors
Copy link
Collaborator

bors commented Apr 29, 2025

⌛ Trying commit 67a01a2 with merge 03aa404...

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 29, 2025
[experiment] reliable float experiments

Trying a few blocked things based on top of rust-lang#140323.

r? `@ghost`

try-job: aarch64-gnu
try-job: i686-gnu-1
try-job: i686-msvc-1
try-job: test-various
try-job: x86_64-gnu
try-job: x86_64-msvc-ext2
try-job: x86_64-gnu-llvm-19-1
try-job: x86_64-gnu-llvm-20-1
@rust-log-analyzer

This comment has been minimized.

@tgross35 tgross35 force-pushed the float-experiments branch from 67a01a2 to 274bf8f Compare April 29, 2025 04:55
@tgross35
Copy link
Contributor Author

@bors try

@rust-log-analyzer
Copy link
Collaborator

The job test-various failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
file:.git/config remote.origin.url=https://github.com/rust-lang-ci/rust
file:.git/config remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
file:.git/config gc.auto=0
file:.git/config http.https://github.com/.extraheader=AUTHORIZATION: basic ***
file:.git/config branch.try.remote=origin
file:.git/config branch.try.merge=refs/heads/try
file:.git/config submodule.library/backtrace.active=true
file:.git/config submodule.library/backtrace.url=https://github.com/rust-lang/backtrace-rs.git
file:.git/config submodule.library/stdarch.active=true
file:.git/config submodule.library/stdarch.url=https://github.com/rust-lang/stdarch.git
file:.git/config submodule.src/doc/book.active=true
---
   |
13 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
 --> library/coretests/tests/num/dec2flt/float.rs:6:7
  |
6 | #[cfg(target_has_reliable_f16)]
  |       ^^^^^^^^^^^^^^^^^^^^^^^
  |
  = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
  = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/dec2flt/float.rs:59:7
   |
59 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
 --> library/coretests/tests/num/dec2flt/lemire.rs:5:7
  |
5 | #[cfg(target_has_reliable_f16)]
  |       ^^^^^^^^^^^^^^^^^^^^^^^
  |
  = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
  = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/dec2flt/lemire.rs:24:7
   |
24 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/mod.rs:79:7
   |
79 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:186:7
    |
186 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:245:7
    |
245 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:294:7
    |
294 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:643:11
    |
643 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:768:11
    |
768 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:923:11
    |
923 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
    --> library/coretests/tests/num/flt2dec/mod.rs:1222:11
     |
1222 |     #[cfg(target_has_reliable_f16)]
     |           ^^^^^^^^^^^^^^^^^^^^^^^
     |
     = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
     = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
    --> library/coretests/tests/num/flt2dec/mod.rs:1239:11
     |
1239 |     #[cfg(target_has_reliable_f16)]
     |           ^^^^^^^^^^^^^^^^^^^^^^^
     |
     = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
     = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/dec2flt/mod.rs:97:11
   |
97 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:106:11
    |
106 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:115:11
    |
115 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:124:11
    |
124 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:133:11
    |
133 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:149:11
    |
149 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:165:11
    |
165 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/dragon.rs:22:11
   |
22 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/dragon.rs:49:11
   |
49 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/grisu.rs:42:11
   |
42 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/grisu.rs:57:11
   |
57 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

For more information about this error, try `rustc --explain E0658`.
[RUSTC-TIMING] coretests test:true 24.518
error: could not compile `coretests` (test "coretests") due to 25 previous errors

@bors
Copy link
Collaborator

bors commented Apr 29, 2025

⌛ Trying commit 274bf8f with merge 5bc85be...

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 29, 2025
[experiment] reliable float experiments

Trying a few blocked things based on top of rust-lang#140323.

r? `@ghost`

try-job: aarch64-gnu
try-job: i686-gnu-1
try-job: i686-msvc-1
try-job: test-various
try-job: x86_64-gnu
try-job: x86_64-msvc-ext2
try-job: x86_64-gnu-llvm-19-1
try-job: x86_64-gnu-llvm-20-1
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-llvm-20-1 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
file:.git/config remote.origin.url=https://github.com/rust-lang-ci/rust
file:.git/config remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
file:.git/config gc.auto=0
file:.git/config http.https://github.com/.extraheader=AUTHORIZATION: basic ***
file:.git/config branch.try.remote=origin
file:.git/config branch.try.merge=refs/heads/try
file:.git/config submodule.library/backtrace.active=true
file:.git/config submodule.library/backtrace.url=https://github.com/rust-lang/backtrace-rs.git
file:.git/config submodule.library/stdarch.active=true
file:.git/config submodule.library/stdarch.url=https://github.com/rust-lang/stdarch.git
file:.git/config submodule.src/doc/book.active=true
---
   |
13 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
 --> library/coretests/tests/num/dec2flt/float.rs:6:7
  |
6 | #[cfg(target_has_reliable_f16)]
  |       ^^^^^^^^^^^^^^^^^^^^^^^
  |
  = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
  = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/dec2flt/float.rs:59:7
   |
59 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
 --> library/coretests/tests/num/dec2flt/lemire.rs:5:7
  |
5 | #[cfg(target_has_reliable_f16)]
  |       ^^^^^^^^^^^^^^^^^^^^^^^
  |
  = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
  = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/dec2flt/lemire.rs:24:7
   |
24 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/random.rs:83:7
   |
83 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/random.rs:124:7
    |
124 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/random.rs:178:7
    |
178 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/random.rs:210:7
    |
210 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/mod.rs:79:7
   |
79 | #[cfg(target_has_reliable_f16)]
   |       ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:186:7
    |
186 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:245:7
    |
245 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:294:7
    |
294 | #[cfg(target_has_reliable_f16)]
    |       ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:643:11
    |
643 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:768:11
    |
768 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/mod.rs:923:11
    |
923 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
    --> library/coretests/tests/num/flt2dec/mod.rs:1222:11
     |
1222 |     #[cfg(target_has_reliable_f16)]
     |           ^^^^^^^^^^^^^^^^^^^^^^^
     |
     = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
     = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
    --> library/coretests/tests/num/flt2dec/mod.rs:1239:11
     |
1239 |     #[cfg(target_has_reliable_f16)]
     |           ^^^^^^^^^^^^^^^^^^^^^^^
     |
     = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
     = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/dec2flt/mod.rs:97:11
   |
97 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:106:11
    |
106 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:115:11
    |
115 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:124:11
    |
124 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:133:11
    |
133 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:149:11
    |
149 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/dec2flt/mod.rs:165:11
    |
165 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/dragon.rs:22:11
   |
22 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/dragon.rs:49:11
   |
49 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/grisu.rs:42:11
   |
42 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
  --> library/coretests/tests/num/flt2dec/strategy/grisu.rs:57:11
   |
57 |     #[cfg(target_has_reliable_f16)]
   |           ^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
   = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

error[E0658]: `cfg(target_has_reliable_f16)` is experimental and subject to change
   --> library/coretests/tests/num/flt2dec/random.rs:171:11
    |
171 |     #[cfg(target_has_reliable_f16)]
    |           ^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: add `#![feature(cfg_target_has_reliable_f16_f128)]` to the crate attributes to enable
    = note: this compiler was built on 2025-04-29; consider upgrading it if it is out of date

[RUSTC-TIMING] path test:true 17.635
[RUSTC-TIMING] seq_compare test:true 0.432
[RUSTC-TIMING] thread_local test:true 3.633

@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-llvm-19 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#18 exporting to docker image format
#18 sending tarball 20.4s done
#18 DONE 26.4s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-19]
[CI_JOB_NAME=x86_64-gnu-llvm-19]
debug: `DISABLE_CI_RUSTC_IF_INCOMPATIBLE` configured.
---
sccache: Listening on address 127.0.0.1:4226
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-19', '--enable-llvm-link-shared', '--set', 'rust.randomize-layout=true', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'build.print-step-timings', '--enable-verbose-tests', '--set', 'build.metrics', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'rust.lld=false', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--set', 'gcc.download-ci-gcc=true', '--enable-new-symbol-mangling']
configure: build.build          := x86_64-unknown-linux-gnu
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-19/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.randomize-layout := True
configure: rust.thin-lto-import-instr-limit := 10
---
[TEST] sysroot
[COPY] sysroot_tests source
[PATCH] "sysroot_tests" <- "0027-sysroot_tests-128bit-atomic-operations.patch"
error: patch failed: coretests/tests/lib.rs:2
error: coretests/tests/lib.rs: patch does not apply
Patch failed at 0001 Disable 128bit atomic operations
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config advice.mergeConflict false"
cd "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1-tools/cg_clif/build/sysroot_tests" && "git" "-c" "user.name=Dummy" "-c" "user.email=dummy@example.com" "-c" "core.autocrlf=false" "-c" "commit.gpgSign=false" "am" "/checkout/compiler/rustc_codegen_cranelift/patches/0027-sysroot_tests-128bit-atomic-operations.patch" "-q" exited with status ExitStatus(unix_wait_status(32768))
Command has failed. Rerun with -v to see more details.
Build completed unsuccessfully in 0:24:06
  local time: Tue Apr 29 05:23:24 UTC 2025
  network time: Tue, 29 Apr 2025 05:23:24 GMT
##[error]Process completed with exit code 1.
Post job cleanup.

@rust-log-analyzer
Copy link
Collaborator

The job test-various failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
file:.git/config remote.origin.url=https://github.com/rust-lang-ci/rust
file:.git/config remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
file:.git/config gc.auto=0
file:.git/config http.https://github.com/.extraheader=AUTHORIZATION: basic ***
file:.git/config branch.try.remote=origin
file:.git/config branch.try.merge=refs/heads/try
file:.git/config submodule.library/backtrace.active=true
file:.git/config submodule.library/backtrace.url=https://github.com/rust-lang/backtrace-rs.git
file:.git/config submodule.library/stdarch.active=true
file:.git/config submodule.library/stdarch.url=https://github.com/rust-lang/stdarch.git
file:.git/config submodule.src/doc/book.active=true

@tgross35 tgross35 closed this Apr 29, 2025
@tgross35 tgross35 deleted the float-experiments branch April 29, 2025 05:36
@rust-log-analyzer
Copy link
Collaborator

The job test-various failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
file:.git/config remote.origin.url=https://github.com/rust-lang-ci/rust
file:.git/config remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
file:.git/config gc.auto=0
file:.git/config http.https://github.com/.extraheader=AUTHORIZATION: basic ***
file:.git/config branch.try.remote=origin
file:.git/config branch.try.merge=refs/heads/try
file:.git/config submodule.library/backtrace.active=true
file:.git/config submodule.library/backtrace.url=https://github.com/rust-lang/backtrace-rs.git
file:.git/config submodule.library/stdarch.active=true
file:.git/config submodule.library/stdarch.url=https://github.com/rust-lang/stdarch.git
file:.git/config submodule.src/doc/book.active=true

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

Labels

A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. 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.

4 participants