From 14ddbf3e47d998ccc26fd63edc18d94a67d7f2b9 Mon Sep 17 00:00:00 2001 From: Sebastian Thiel Date: Tue, 1 Mar 2022 13:18:36 +0800 Subject: [PATCH] minor improvement to how artifact targets are handled in platform descriptions --- src/cargo/core/resolver/features.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/cargo/core/resolver/features.rs b/src/cargo/core/resolver/features.rs index df2919b44..add4c70bd 100644 --- a/src/cargo/core/resolver/features.rs +++ b/src/cargo/core/resolver/features.rs @@ -772,8 +772,13 @@ impl<'a, 'cfg> FeatureResolver<'a, 'cfg> { // We always count platforms as activated if the target stems from an artifact // dependency's target specification. This triggers in conjunction with // `[target.'cfg(…)'.dependencies]` manifest sections. - if matches!(fk, FeaturesFor::NormalOrDevOrArtifactTarget(Some(_))) { - return true; + if let FeaturesFor::NormalOrDevOrArtifactTarget(Some(target)) = fk { + if self + .target_data + .dep_platform_activated(dep, CompileKind::Target(target)) + { + return true; + } } // Not a build dependency, and not for a build script, so must be Target. self.requested_targets