[binutils-gdb] gas/ELF: also reject merge entity size being zero

Jan Beulich jbeulich@sourceware.org
Mon Nov 18 10:38:47 GMT 2024


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d5cbf916be4a049580dfed8682f3f8795e57ecfa

commit d5cbf916be4a049580dfed8682f3f8795e57ecfa
Author: Jan Beulich <jbeulich@suse.com>
Date:   Mon Nov 18 11:35:57 2024 +0100

    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.

Diff:
---
 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;


More information about the Binutils-cvs mailing list