Closed
Description
x.py check --stage 0 fails on checking src/etc/test-float-parse since that used to always get an in-tree std but now gets beta std after #119899.
error[E0277]: the trait bound `f16: LowerExp` is not satisfied
--> src/etc/test-float-parse/src/traits.rs:158:65
|
149 | / macro_rules! impl_float {
150 | | ($($fty:ty, $ity:ty);+) => {
151 | | $(
152 | | impl Float for $fty {
... |
158 | | const SIGN_MASK: Self::Int = Self::Int::ONE << (Self::BITS-1);
| | ^^^^ the trait `LowerExp` is not implemented for `f16`
... |
169 | | }
| |_- in this expansion of `impl_float!`
...
174 | impl_float!(f16, u16);
| --------------------- in this macro invocation
|
= help: the following other types implement trait `LowerExp`:
f32
f64
i128
i16
i32
i64
i8
isize
and 6 others
note: required by a bound in `traits::Float::BITS`
--> src/etc/test-float-parse/src/traits.rs:105:25
|
105 | Copy + fmt::Debug + fmt::LowerExp + FromStr<Err: fmt::Display> + Sized + Send + 'static
| ^^^^^^^^^^^^^ required by this bound in `Float::BITS`
...
112 | const BITS: u32;
| ---- required by a bound in this associated constant
We should consider adding an x.py check --stage 0
to CI so that people remember/notice adding the relevant cfg(bootstrap) annotations and/or change bootstrap to not permit checking certain tools under stage 0.
cc #141901