From e3ceea1e676419083c20f71ff0a4fdee05bd684b Mon Sep 17 00:00:00 2001 From: Sam Maier Date: Wed, 8 Apr 2026 16:56:22 -0400 Subject: [PATCH] Forward-declare ArgbConstants in convert.h to fix visibility error The libyuv into Chromium roller is currently broken, see bug 500795092. This change adds a forward declaration for struct ArgbConstants in include/libyuv/convert.h. This resolves a -Wvisibility error where the struct was being declared within a function prototype, making it invisible outside that scope and breaking automated binding generation (e.g., for crabbyavif). Verified building crabbyavif_libyuv_bindings locally and this patch fixed it. Bug: 500795092 Change-Id: Ie0126650ab346940f4610bd4d2e8a5b3ef9ce103 Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/7739974 Commit-Queue: Dale Curtis Reviewed-by: Frank Barchard Reviewed-by: Dale Curtis --- include/libyuv/convert.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/libyuv/convert.h b/include/libyuv/convert.h index 854fd5217..662337750 100644 --- a/include/libyuv/convert.h +++ b/include/libyuv/convert.h @@ -25,6 +25,8 @@ namespace libyuv { extern "C" { #endif +struct ArgbConstants; + // Convert I444 to I420. LIBYUV_API int I444ToI420(const uint8_t* src_y,