[PATCH] fix handling of angle brackets in alternate macro syntax
Jan Beulich
JBeulich@novell.com
Thu Feb 23 14:35:00 GMT 2006
Angle-bracketing input is meant as an escape mechanism in alternate macro
mode, and the net effect of using this should be that the text inside the
brackets gets inserted literally (subject to ! escaping). Up to now, the
resulting text was put in double quotes, however.
Built and tested on i686-pc-linux-gnu, x86_64-unknown-linux-gnu, and for a
large number of cross targets.
Jan
gas/
2006-02-21 Jan Beulich <jbeulich@novell.com>
* macro.c (get_any_string): Don't insert quotes for <>-quoted input.
gas/testsuite/
2006-02-21 Jan Beulich <jbeulich@novell.com>
* gas/all/altmacro.s: Adjust.
* gas/all/altmac2.s: Adjust.
--- /home/jbeulich/src/binutils/mainline/2006-02-21/gas/macro.c 2005-11-07 08:48:26.000000000 +0100
+++ 2006-02-21/gas/macro.c 2006-02-21 14:33:52.000000000 +0100
@@ -442,13 +442,12 @@ get_any_string (int idx, sb *in, sb *out
|| (in->ptr[idx] == '<' && (macro_alternate || macro_mri))
|| (macro_alternate && in->ptr[idx] == '\''))
{
- if (macro_alternate && ! macro_strip_at)
+ if (macro_alternate && ! macro_strip_at && in->ptr[idx] != '<')
{
/* Keep the quotes. */
- sb_add_char (out, '\"');
+ sb_add_char (out, '"');
-
idx = getstring (idx, in, out);
- sb_add_char (out, '\"');
+ sb_add_char (out, '"');
}
else
{
--- /home/jbeulich/src/binutils/mainline/2006-02-21/gas/testsuite/gas/all/altmac2.s 2004-08-24 13:37:54.000000000
+0200
+++ 2006-02-21/gas/testsuite/gas/all/altmac2.s 2006-02-21 14:35:27.000000000 +0100
@@ -1,5 +1,5 @@
.macro m1 str
- .ascii &str
+ .ascii "&str"
.endm
.data
--- /home/jbeulich/src/binutils/mainline/2006-02-21/gas/testsuite/gas/all/altmacro.s 2005-05-17 16:04:15.000000000
+0200
+++ 2006-02-21/gas/testsuite/gas/all/altmacro.s 2006-02-21 14:35:03.000000000 +0100
@@ -20,7 +20,7 @@ m2 1, 3
m2 9, 27
m3 "abc"
-m3 <123>
+m3 <"1", "23">
.noaltmacro
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: binutils-mainline-altmacro-angle-bracket.patch
URL: <https://sourceware.org/pipermail/binutils/attachments/20060223/ae5e2c8e/attachment.ksh>
More information about the Binutils
mailing list