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 * macro.c (get_any_string): Don't insert quotes for <>-quoted input. gas/testsuite/ 2006-02-21 Jan Beulich * 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