diff --git a/src/cargo/ops/cargo_rustc/context.rs b/src/cargo/ops/cargo_rustc/context.rs index 44b6cbb9a94..b3be8f1f63e 100644 --- a/src/cargo/ops/cargo_rustc/context.rs +++ b/src/cargo/ops/cargo_rustc/context.rs @@ -292,11 +292,14 @@ impl<'a, 'cfg> Context<'a, 'cfg> { crate_types: &BTreeSet, kind: Kind) -> CargoResult<()> { - let rustflags = env_args(self.config, + let mut rustflags = env_args(self.config, &self.build_config, self.info(&kind), kind, "RUSTFLAGS")?; + // Any other output will confuse parsing + rustflags.retain(|arg| !arg.starts_with("--print=")); + let mut process = self.config.rustc()?.process(); process.arg("-") .arg("--crate-name").arg("___")