summaryrefslogtreecommitdiff
path: root/gas/app.c
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/app.c
parent11cf87416416e13eff634a70b4954fe6a3912720 (diff)
downloadbinutils-c5c834aac9bc219aff5d32713e12d683f57ce176.tar.gz
binutils-c5c834aac9bc219aff5d32713e12d683f57ce176.tar.bz2
binutils-c5c834aac9bc219aff5d32713e12d683f57ce176.zip
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/app.c')
-rw-r--r--gas/app.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/gas/app.c b/gas/app.c
index 0494aec23b6..73d579dfe5d 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);