2001-01-25 Kazu Hirata <kazu@hxi.com>
authorKazu Hirata <kazu@codesourcery.com>
Thu, 25 Jan 2001 20:12:49 +0000 (20:12 +0000)
committerKazu Hirata <kazu@codesourcery.com>
Thu, 25 Jan 2001 20:12:49 +0000 (20:12 +0000)
* chew.c: Do not output trailing whitespaces in type and
functionname.  Update copyright.

bfd/doc/ChangeLog
bfd/doc/chew.c

index e4b60637548db75c56a09dcea7669365f8f9a632..57326a98fb27461923adad395ad8f94fe031a77a 100644 (file)
@@ -1,3 +1,8 @@
+2001-01-25  Kazu Hirata  <kazu@hxi.com>
+
+       * chew.c: Do not output trailing whitespaces in type and
+       functionname.  Update copyright.
+
 2001-01-24  Kazu Hirata  <kazu@hxi.com>
 
        * chew.c: Do not output a trailing whitespace.
index 1511614af2e3bbf1a0b20678e1261b1237870b5f..7b98ccfc87fae6c6f9ea97d2beaa7933fa6940f3 100644 (file)
@@ -1,5 +1,5 @@
 /* chew
-   Copyright (C) 1990, 91, 92, 93, 94, 95, 96, 1998, 2000
+   Copyright (C) 1990, 91, 92, 93, 94, 95, 96, 1998, 2000, 2001
    Free Software Foundation, Inc.
    Contributed by steve chamberlain @cygnus
 
@@ -487,6 +487,7 @@ paramstuff (void)
   unsigned int openp;
   unsigned int fname;
   unsigned int idx;
+  unsigned int len;
   string_type out;
   init_string (&out);
 
@@ -513,29 +514,33 @@ paramstuff (void)
 
       fname++;
 
-      for (idx = 0; idx < fname; idx++)        /* Output type */
+      /* Output type, omitting trailing whitespace character(s), if
+         any.  */
+      for (len = fname; 0 < len; len--)
        {
-         /* Omit a trailing whitespace.  */
-         if (idx + 1 == fname && isspace ((unsigned char) at (tos, idx)))
+         if (!isspace ((unsigned char) at (tos, len - 1)))
            break;
-
-         catchar (&out, at (tos, idx));
        }
+      for (idx = 0; idx < len; idx++)
+       catchar (&out, at (tos, idx));
 
       cattext (&out, "\n");    /* Insert a newline between type and fnname */
 
-      for (idx = fname; idx < openp; idx++)            /* Output fnname */
+      /* Output function name, omitting trailing whitespace
+         character(s), if any.  */
+      for (len = openp; 0 < len; len--)
        {
-         catchar (&out, at (tos, idx));
+         if (!isspace ((unsigned char) at (tos, len - 1)))
+           break;
        }
+      for (idx = fname; idx < len; idx++)
+       catchar (&out, at (tos, idx));
 
       cattext (&out, " PARAMS (");
 
-      while (at (tos, idx) && at (tos, idx) != ';')
-       {
-         catchar (&out, at (tos, idx));
-         idx++;
-       }
+      for (idx = openp; at (tos, idx) && at (tos, idx) != ';'; idx++)
+       catchar (&out, at (tos, idx));
+
       cattext (&out, ");\n\n");
     }
   overwrite_string (tos, &out);