* xcoffout.c (xcoffout_declare_function): Always strip storage
class encoding.
From-SVN: r92101
+2004-12-13 David Edelsohn <edelsohn@gnu.org>
+
+ * xcoffout.c (xcoffout_declare_function): Always strip storage
+ class encoding.
+
2004-12-13 Andrew Pinski <pinskia@physics.uc.edu>
PR target/18964
void
xcoffout_declare_function (FILE *file, tree decl, const char *name)
{
- int i;
+ size_t len;
if (*name == '*')
name++;
- else
- for (i = 0; name[i]; ++i)
- {
- if (name[i] == '[')
- {
- char *n = alloca (i + 1);
- strncpy (n, name, i);
- n[i] = '\0';
- name = n;
- break;
- }
- }
+ len = strlen (name);
+ if (name[len - 1] == ']')
+ {
+ char *n = alloca (len - 3);
+ strncpy (n, name, len - 4);
+ n[len - 4] = '\0';
+ name = n;
+ }
/* Any pending .bi or .ei must occur before the .function pseudo op.
Otherwise debuggers will think that the function is in the previous