Invert cfg polarity so builds without any cfg assume most recent compiler

This commit is contained in:
David Tolnay 2020-09-30 12:41:23 -07:00
parent 6cb2f0aacf
commit cf074f7895
No known key found for this signature in database
GPG Key ID: F9BA143B95FF6D82
2 changed files with 7 additions and 7 deletions

View File

@ -22,14 +22,14 @@ fn main() {
// BTreeMap::get_key_value
// https://blog.rust-lang.org/2019/12/19/Rust-1.40.0.html#additions-to-the-standard-library
if minor >= 40 {
println!("cargo:rustc-cfg=btreemap_get_key_value");
if minor < 40 {
println!("cargo:rustc-cfg=no_btreemap_get_key_value");
}
// BTreeMap::remove_entry
// https://blog.rust-lang.org/2020/07/16/Rust-1.45.0.html#library-changes
if minor >= 45 {
println!("cargo:rustc-cfg=btreemap_remove_entry");
if minor < 45 {
println!("cargo:rustc-cfg=no_btreemap_remove_entry");
}
}

View File

@ -132,16 +132,16 @@ impl Map<String, Value> {
String: Borrow<Q>,
Q: ?Sized + Ord + Eq + Hash,
{
#[cfg(any(feature = "preserve_order", btreemap_remove_entry))]
#[cfg(any(feature = "preserve_order", not(no_btreemap_remove_entry)))]
return self.map.remove_entry(key);
#[cfg(all(btreemap_get_key_value, not(any(feature = "preserve_order", btreemap_remove_entry))))]
#[cfg(all(not(no_btreemap_get_key_value), not(any(feature = "preserve_order", not(no_btreemap_remove_entry)))))]
{
let (key, _value) = self.map.get_key_value(key)?;
let key = key.clone();
let value = self.map.remove::<String>(&key)?;
Some((key, value))
}
#[cfg(not(any(feature = "preserve_order", btreemap_remove_entry, btreemap_get_key_value)))]
#[cfg(not(any(feature = "preserve_order", not(no_btreemap_remove_entry), not(no_btreemap_get_key_value))))]
{
use std::ops::{Bound, RangeBounds};