From cd291b8e516767eaae2edf1cb968d49a005eecfa Mon Sep 17 00:00:00 2001 From: mibac138 <5672750+mibac138@users.noreply.github.com> Date: Fri, 8 May 2020 00:07:18 +0200 Subject: [PATCH] Adjust cfg(version) to lang team decision --- src/librustc_attr/build.rs | 3 ++- src/librustc_attr/builtin.rs | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/librustc_attr/build.rs b/src/librustc_attr/build.rs index d230ba91039ad..863f2b7337b25 100644 --- a/src/librustc_attr/build.rs +++ b/src/librustc_attr/build.rs @@ -1,4 +1,5 @@ fn main() { println!("cargo:rerun-if-changed=build.rs"); - println!("cargo:rerun-if-env-changed=CFG_VERSION"); + println!("cargo:rerun-if-env-changed=CFG_RELEASE"); + println!("cargo:rerun-if-env-changed=CFG_RELEASE_CHANNEL"); } diff --git a/src/librustc_attr/builtin.rs b/src/librustc_attr/builtin.rs index ce38e3f5f4e4e..a592bbc2bf918 100644 --- a/src/librustc_attr/builtin.rs +++ b/src/librustc_attr/builtin.rs @@ -652,9 +652,12 @@ pub fn eval_condition( return false; } }; - let version = Version::parse(env!("CFG_VERSION")).unwrap(); + let channel = env!("CFG_RELEASE_CHANNEL"); + let nightly = channel == "nightly" || channel == "dev"; + let rustc_version = Version::parse(env!("CFG_RELEASE")).unwrap(); - version >= min_version + // See https://github.com/rust-lang/rust/issues/64796#issuecomment-625474439 for details + if nightly { rustc_version > min_version } else { rustc_version >= min_version } } ast::MetaItemKind::List(ref mis) => { for mi in mis.iter() {