aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>1999-11-09 17:14:45 +0000
committerAndrew Haley <aph@redhat.com>1999-11-09 17:14:45 +0000
commitc5c834aac9bc219aff5d32713e12d683f57ce176 (patch)
treee1742c947fac0d54cf4362eaa012bfcfc177003b /gas
parent11cf87416416e13eff634a70b4954fe6a3912720 (diff)
downloadgdb-c5c834aac9bc219aff5d32713e12d683f57ce176.zip
gdb-c5c834aac9bc219aff5d32713e12d683f57ce176.tar.gz
gdb-c5c834aac9bc219aff5d32713e12d683f57ce176.tar.bz2
1999-11-08 Andrew Haley <aph@cygnus.com>
* app.c (do_scrub_chars): When in State 10, treat backslash characters in the same way as as symbol characters.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/app.c17
2 files changed, 22 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index f21f66d..edad0df 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+1999-11-08 Andrew Haley <aph@cygnus.com>
+
+ * app.c (do_scrub_chars): When in State 10, treat backslash
+ characters in the same way as as symbol characters.
+
1999-11-07 Richard Henderson <rth@cygnus.com>
* config/tc-alpha.c (alpha_align): Check, don't assert, that
diff --git a/gas/app.c b/gas/app.c
index 0494aec..73d579d 100644
--- a/gas/app.c
+++ b/gas/app.c
@@ -1227,6 +1227,23 @@ do_scrub_chars (get, tostart, tolen)
}
else if (state == 10)
{
+ if (ch == '\\')
+ {
+ /* Special handling for backslash: a backslash may
+ be the beginning of a formal parameter (of a
+ macro) following another symbol character, with
+ whitespace in between. If that is the case, we
+ output a space before the parameter. Strictly
+ speaking, correct handling depends upon what the
+ macro parameter expands into; if the parameter
+ expands into something which does not start with
+ an operand character, then we don't want to keep
+ the space. We don't have enough information to
+ make the right choice, so here we are making the
+ choice which is more likely to be correct. */
+ PUT (' ');
+ }
+
state = 3;
}
PUT (ch);