test(windows-drivers): CI-assert the full IddCx driver symbol surface
Port-plan critique #1: convert "the (?i).*iddcx.* allowlist may miss a symbol the full driver needs" from a box-only surprise into a CI compile gate. New wdk-probe/src/iddcx_surface_assert.rs size_of-asserts every *2/HDR struct (IDDCX_TARGET_MODE2/PATH2/METADATA2, IDARG_*RELEASEANDACQUIREBUFFER2 — these embed DISPLAYCONFIG_*/LUID, which RESOLVE from crate::types: no allowlist gap), None-asserts all 14 inbound PFN_IDD_CX_* callbacks, and confirms the .Size machinery (IddStructures/IddStructureCount/IddClientVersionHigherThanFramework/ _IDDSTRUCTENUM::INDEX_*) + the FP16/HIGH_COLOR_SPACE flags. Box-built green; the wdk-sys binding is proven complete for the ENTIRE driver, not just init. Also silence the bindgen naming lints in the iddcx module. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -13,6 +13,9 @@
|
||||
generate documentation for their bindings"
|
||||
)]
|
||||
mod bindings {
|
||||
// The WDK IddCx C names (PFN_IDD_CX_*, EvtIddCx* fields, *TableIndex consts) are not Rust-cased;
|
||||
// bindgen emits them verbatim. Suppress the style lints for the generated surface.
|
||||
#![allow(non_camel_case_types, non_snake_case, non_upper_case_globals)]
|
||||
#[allow(
|
||||
clippy::wildcard_imports,
|
||||
reason = "the underlying c code relies on all type definitions being in scope, which \
|
||||
|
||||
Reference in New Issue
Block a user