From d5cbf916be4a049580dfed8682f3f8795e57ecfa Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Mon, 18 Nov 2024 11:35:57 +0100 Subject: [PATCH] gas/ELF: also reject merge entity size being zero This won't have any useful effect, so is at best marginally less bogus than a negative value. The change actually points out a flawed (for Arm) testcase: @ is a comment character there. --- binutils/testsuite/binutils-all/debug_str.s | 2 +- gas/config/obj-elf.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/binutils/testsuite/binutils-all/debug_str.s b/binutils/testsuite/binutils-all/debug_str.s index 485d0cc3187..d8dc9c2e0f6 100644 --- a/binutils/testsuite/binutils-all/debug_str.s +++ b/binutils/testsuite/binutils-all/debug_str.s @@ -8,5 +8,5 @@ resulting size was gigantic and consequently the library quickly ran out of memory. */ - .section .debug_str,"MS",@progbits,1 + .section .debug_str,"MS",%progbits,1 .string "ZLIB_VER_SUBREVISION 0" diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c index d8af4b720e0..4f09b8dc87c 100644 --- a/gas/config/obj-elf.c +++ b/gas/config/obj-elf.c @@ -1327,7 +1327,7 @@ obj_elf_section (int push) goto fetch_entsize; entsize = get_absolute_expression (); SKIP_WHITESPACE (); - if (entsize < 0) + if (entsize <= 0) { as_warn (_("invalid merge entity size")); attr &= ~SHF_MERGE;