diff --git a/serde_test/build.rs b/serde_test/build.rs index 158706554..f7ca97417 100644 --- a/serde_test/build.rs +++ b/serde_test/build.rs @@ -13,8 +13,8 @@ fn main() { // #[track_caller] stabilized in Rust 1.46: // https://blog.rust-lang.org/2020/08/27/Rust-1.46.0.html#track_caller - if minor >= 46 { - println!("cargo:rustc-cfg=track_caller"); + if minor < 46 { + println!("cargo:rustc-cfg=no_track_caller"); } } diff --git a/serde_test/src/assert.rs b/serde_test/src/assert.rs index b34b1f55c..9be153d74 100644 --- a/serde_test/src/assert.rs +++ b/serde_test/src/assert.rs @@ -28,7 +28,7 @@ use std::fmt::Debug; /// Token::StructEnd, /// ]); /// ``` -#[cfg_attr(track_caller, track_caller)] +#[cfg_attr(not(no_track_caller), track_caller)] pub fn assert_tokens<'de, T>(value: &T, tokens: &'de [Token]) where T: Serialize + Deserialize<'de> + PartialEq + Debug, @@ -59,7 +59,7 @@ where /// Token::StructEnd, /// ]); /// ``` -#[cfg_attr(track_caller, track_caller)] +#[cfg_attr(not(no_track_caller), track_caller)] pub fn assert_ser_tokens(value: &T, tokens: &[Token]) where T: Serialize, @@ -112,7 +112,7 @@ where /// assert_ser_tokens_error(&example, expected, error); /// } /// ``` -#[cfg_attr(track_caller, track_caller)] +#[cfg_attr(not(no_track_caller), track_caller)] pub fn assert_ser_tokens_error(value: &T, tokens: &[Token], error: &str) where T: Serialize, @@ -150,7 +150,7 @@ where /// Token::StructEnd, /// ]); /// ``` -#[cfg_attr(track_caller, track_caller)] +#[cfg_attr(not(no_track_caller), track_caller)] pub fn assert_de_tokens<'de, T>(value: &T, tokens: &'de [Token]) where T: Deserialize<'de> + PartialEq + Debug, @@ -203,7 +203,7 @@ where /// "unknown field `x`, expected `a` or `b`", /// ); /// ``` -#[cfg_attr(track_caller, track_caller)] +#[cfg_attr(not(no_track_caller), track_caller)] pub fn assert_de_tokens_error<'de, T>(tokens: &'de [Token], error: &str) where T: Deserialize<'de>,