macro_rules! gates {
($($v:tt),* $(,)?) => {
fn main() {
println!("cargo:rerun-if-changed=build.rs");
$({
#[rustversion::since($v)]
fn on(cfg: &str) {
println!("cargo:rustc-cfg={}", cfg);
}
#[rustversion::before($v)]
fn on(_: &str) {}
#[rustversion::since(1.80)]
fn check(cfg: &str) {
println!("cargo:rustc-check-cfg=cfg({})", cfg);
}
#[rustversion::before(1.80)]
fn check(_: &str) {}
let cfg = format!("announce_std_rust_{}", stringify!($v).replace('.', "_"));
check(&cfg);
on(&cfg);
})*
}
};
}
gates![1.61, 1.64, 1.80, 1.81, 1.94];