Commit 2896b3e1f8 for aom

commit 2896b3e1f8dec127d14cf607d1da0ba556ff409c
Author: Ihor Buhaiov <freedbrt@gmail.com>
Date:   Thu Nov 5 18:23:51 2026 +0100

    Add an extern "C" guard to txb_common.h

    Since 70dd1176e5, encodetxb_test.cc reads av1_txb_padded_idx from
    txb_common.h. The header has no extern "C" block, so C++ code sees
    the table with C++ linkage. On the MSVC ABI that name is mangled and
    no longer matches the C definition, and test_libaom fails to link
    with clang-cl:

      lld-link: error: undefined symbol: short const *const *const
      av1_txb_padded_idx
      >>> referenced by test\encodetxb_test.cc.obj

    Linux and macOS link because the Itanium ABI does not mangle global
    variables.

    Wrap the header in the usual __cplusplus extern "C" block, as the
    other av1/common headers do.

    Change-Id: I48a65c49626d0a8b9c5ac12d8e027197f86b1592

diff --git a/av1/common/txb_common.h b/av1/common/txb_common.h
index a8a34b00b2..7b3ee8c431 100644
--- a/av1/common/txb_common.h
+++ b/av1/common/txb_common.h
@@ -14,6 +14,10 @@

 #include "av1/common/av1_common_int.h"

+#ifdef __cplusplus
+extern "C" {
+#endif
+
 extern const int16_t av1_eob_group_start[12];
 extern const int16_t av1_eob_offset_bits[12];

@@ -473,4 +477,8 @@ static inline void get_txb_ctx(const BLOCK_SIZE plane_bsize,
 }
 #undef MAX_TX_SIZE_UNIT

+#ifdef __cplusplus
+}  // extern "C"
+#endif
+
 #endif  // AOM_AV1_COMMON_TXB_COMMON_H_