From ca67b09c015d4af3ae3cce12aa72e60941dbb8b5 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 18:29:52 +0200 Subject: Adding debian version 2.06-13+deb12u1. Signed-off-by: Daniel Baumann --- debian/patches/gcc12_build_array_bounds2.patch | 46 ++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 debian/patches/gcc12_build_array_bounds2.patch (limited to 'debian/patches/gcc12_build_array_bounds2.patch') diff --git a/debian/patches/gcc12_build_array_bounds2.patch b/debian/patches/gcc12_build_array_bounds2.patch new file mode 100644 index 0000000..6036eba --- /dev/null +++ b/debian/patches/gcc12_build_array_bounds2.patch @@ -0,0 +1,46 @@ +commit 3ce13d974b887338ae972c79b41ff6fc0eee6388 +Author: Michael Chang +Date: Mon Mar 28 15:00:54 2022 +0800 + + lib/reed_solomon: Fix array subscript 0 is outside array bounds + + The grub_absolute_pointer() is a compound expression that can only work + within a function. We are out of luck here when the pointer variables + require global definition due to ATTRIBUTE_TEXT that have to use fully + initialized global definition because of the way linkers work. + + static gf_single_t * const gf_powx ATTRIBUTE_TEXT = (void *) 0x100000; + + For the reason given above, use GCC diagnostic pragmas to suppress the + array-bounds warning. + + Signed-off-by: Michael Chang + Reviewed-by: Daniel Kiper + +diff --git a/grub-core/lib/reed_solomon.c b/grub-core/lib/reed_solomon.c +index 82779a296..562bd2e3e 100644 +--- a/grub-core/lib/reed_solomon.c ++++ b/grub-core/lib/reed_solomon.c +@@ -102,6 +102,11 @@ static gf_single_t errvals[256]; + static gf_single_t eqstat[65536 + 256]; + #endif + ++#if __GNUC__ == 12 ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Warray-bounds" ++#endif ++ + static gf_single_t + gf_mul (gf_single_t a, gf_single_t b) + { +@@ -319,6 +324,10 @@ decode_block (gf_single_t *ptr, grub_size_t s, + } + } + ++#if __GNUC__ == 12 ++#pragma GCC diagnostic pop ++#endif ++ + #if !defined (STANDALONE) + static void + encode_block (gf_single_t *ptr, grub_size_t s, -- cgit v1.2.3