(OBJC_GEN_METHOD_LABEL): Convert colons to _'s.
authorRichard Stallman <rms@gnu.org>
Wed, 10 Mar 1993 07:19:29 +0000 (07:19 +0000)
committerRichard Stallman <rms@gnu.org>
Wed, 10 Mar 1993 07:19:29 +0000 (07:19 +0000)
Don't use the category name or the number.

From-SVN: r3691

gcc/objc/objc-act.c

index 136d77063eb7ec487b81ba2aec715d6e05676708..e1e7d638e113d758967aaf48180ec827311f9892 100644 (file)
@@ -55,15 +55,19 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #endif
 
 /* This is the default way of generating a method name.  */
+/* I am not sure it is really correct.
+   Perhaps there's a danger that it will make name conflicts
+   if method names contain underscores. -- rms.  */
 #ifndef OBJC_GEN_METHOD_LABEL
 #define OBJC_GEN_METHOD_LABEL(BUF, IS_INST, CLASS_NAME, CAT_NAME, SEL_NAME, NUM)       \
   do {                                 \
-    char *cat_name = (CAT_NAME);       \
-    if (cat_name == 0) cat_name = "";  \
-    sprintf ((BUF), "_%s_%s_%s_%s_%d", \
+    char *temp;                                \
+    sprintf ((BUF), "_%s_%s_%s",       \
             ((IS_INST) ? "i" : "c"),   \
-            (CLASS_NAME), cat_name,    \
-            (SEL_NAME), (NUM));        \
+            (CLASS_NAME),              \
+            (SEL_NAME));               \
+    for (temp = (BUF); *temp; temp++)  \
+      if (*temp == ':') *temp = '_';   \
   } while (0)
 #endif
 \f