[binutils-gdb/binutils-2_43-branch] gas: correct .irpc handling with empty string

Jan Beulich jbeulich@sourceware.org
Wed Aug 14 09:28:50 GMT 2024


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

commit cb204acaff5d85f88f1fb006265bc361d566ff2d
Author: Jan Beulich <jbeulich@suse.com>
Date:   Wed Aug 14 11:25:34 2024 +0200

    gas: correct .irpc handling with empty string
    
    Following 69cab370cf66 ("gas: adjust handling of quotes for .irpc") the
    closing quote was mistakenly treated as the first quoted character.

Diff:
---
 gas/macro.c                           | 1 +
 gas/testsuite/gas/macros/irpc-quote.s | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/gas/macro.c b/gas/macro.c
index a35e1356bbf..d0c90d30e47 100644
--- a/gas/macro.c
+++ b/gas/macro.c
@@ -1389,6 +1389,7 @@ expand_irp (int irpc, size_t idx, sb *in, sb *out, size_t (*get_line) (sb *))
 		      if (idx >= in->len)
 			break;
 		    }
+		  continue;
 		}
 	      sb_reset (&f.actual);
 	      sb_add_char (&f.actual, in->ptr[idx]);
diff --git a/gas/testsuite/gas/macros/irpc-quote.s b/gas/testsuite/gas/macros/irpc-quote.s
index 0499f6957b4..032619665b9 100644
--- a/gas/testsuite/gas/macros/irpc-quote.s
+++ b/gas/testsuite/gas/macros/irpc-quote.s
@@ -1,6 +1,6 @@
-	.irpc c, " ab" cd " ef"
+	.irpc c, " ab" cd " ef" ""
 	.print ">\c<"
 	.endr
-	.irpc c, "12 " 34 "56 "
+	.irpc c, "" "12 " 34 "56 "
 	.print ">\c<"
 	.endr


More information about the Binutils-cvs mailing list