From 5783a500e83f35b931c519457d1277a9d14df3c0 Mon Sep 17 00:00:00 2001 From: JoeAllen <2494136784@qq.com> Date: Wed, 30 Sep 2026 13:15:01 +0800 Subject: [PATCH] =?UTF-8?q?fix(cross-platform):=20cfg=20=E6=8E=89=E7=9A=84?= =?UTF-8?q?=20Windows=20=E8=B7=AF=E5=BE=84=E9=81=97=E7=95=99=20dead=5Fcode?= =?UTF-8?q?=20=E5=9C=A8=20-D=20warnings=20=E4=B8=8B=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CI 的 setup-rust-toolchain 默认 RUSTFLAGS=-Dwarnings:非 Windows 下 sample_windows/set_topmost_windows 被 cfg 移除后,其专用字段 (Sampler.pid/last_cpu/last_percent)与常量(SWP_*)成为 dead code。 字段加 cfg_attr(not(windows) allow(dead_code)),常量加 cfg 门控。 --- gpui-app/src/platform.rs | 5 +++++ gpui-app/src/sysmon.rs | 3 +++ 2 files changed, 8 insertions(+) diff --git a/gpui-app/src/platform.rs b/gpui-app/src/platform.rs index 1556d62..513dded 100644 --- a/gpui-app/src/platform.rs +++ b/gpui-app/src/platform.rs @@ -47,6 +47,11 @@ fn set_topmost_windows(_window: &gpui_kit::Window, _topmost: bool) -> bool { false } +// 仅 Windows 采样路径使用;非 Windows 下该路径被 cfg 移除,常量会成为 +// dead_code(CI 的 -D warnings 下即错误),按平台放行。 +#[cfg(target_os = "windows")] const SWP_NOSIZE: u32 = 0x0001; +#[cfg(target_os = "windows")] const SWP_NOMOVE: u32 = 0x0002; +#[cfg(target_os = "windows")] const SWP_NOACTIVATE: u32 = 0x0010; diff --git a/gpui-app/src/sysmon.rs b/gpui-app/src/sysmon.rs index 956f4c1..f8b86eb 100644 --- a/gpui-app/src/sysmon.rs +++ b/gpui-app/src/sysmon.rs @@ -24,6 +24,9 @@ pub struct Sample { } /// 周期采样器:内部记录上次 CPU 时间,用于差分计算占用率。 +// pid/last_cpu/last_percent 仅 Windows 采样路径读写;非 Windows 下该路径被 cfg +// 移除,这三个字段会成为 dead_code(CI 的 -D warnings 下即错误),按平台放行。 +#[cfg_attr(not(target_os = "windows"), allow(dead_code))] pub struct Sampler { pid: u32, last_cpu: Option<(u64, u64, Instant)>,