Skip to content

cfg(bootstrap) needed in test-float-parse #141900

@Mark-Simulacrum

Description

@Mark-Simulacrum

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

Metadata

Metadata

Assignees

Labels

A-testsuiteArea: The testsuite used to check the correctness of rustcC-bugCategory: This is a bug.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions