* macro.c (macro_expand_body): Do not treat LOCAL as a keyword in
altmacro mode if found inside a quoted string.
* gas/macros/altmacro.s: New test.
* gas/macros/altmacro.d: Expected output.
+2010-04-20 Nick Clifton <nickc@redhat.com>
+
+ PR gas/11507
+ * macro.c (macro_expand_body): Do not treat LOCAL as a keyword in
+ altmacro mode if found inside a quoted string.
+
2010-04-20 Mike Frysinger <vapier@gentoo.org>
* config/bfin-lex.l (parse_int): Change index() to strchr().
if (! macro
|| src + 5 >= in->len
|| strncasecmp (in->ptr + src, "LOCAL", 5) != 0
- || ! ISWHITE (in->ptr[src + 5]))
+ || ! ISWHITE (in->ptr[src + 5])
+ /* PR 11507: Skip keyword LOCAL if it is found inside a quoted string. */
+ || inquote)
{
sb_reset (&t);
src = sub_actual (src, in, &t, formal_hash,
+2010-04-20 Nick Clifton <nickc@redhat.com>
+
+ PR gas/11507
+ * gas/macros/altmacro.s: New test.
+ * gas/macros/altmacro.d: Expected output.
+
2010-04-16 Nick Clifton <nickc@redhat.com>
PR gas/11395
--- /dev/null
+local
+.LL0001
+.LL0002
--- /dev/null
+# Check use of LOCAL directive inside .altmacro.
+# Test derived from PR 11507.
+
+ .altmacro
+
+ .macro ABC
+ .print "local "
+ .endm
+
+ .macro DEF
+ LOCAL fred
+ .print "fred"
+ .endm
+
+# This one is just being perverse, but it should work.
+ .macro GHI
+ local local
+ .print "local"
+ .endm
+
+
+ ABC
+
+ DEF
+
+ GHI