cccp.c (special_symbol, [...]): Output "__wchar_t" for C++.
authorJason Merrill <merrill@gnu.org>
Mon, 4 Apr 1994 21:21:02 +0000 (21:21 +0000)
committerJason Merrill <merrill@gnu.org>
Mon, 4 Apr 1994 21:21:02 +0000 (21:21 +0000)
        * cccp.c (special_symbol, case T_WCHAR_TYPE): Output "__wchar_t"
        for C++.

From-SVN: r6959

gcc/cccp.c

index 5f73a0a..1901cf6 100644 (file)
@@ -3820,8 +3820,15 @@ special_symbol (hp, op)
 #endif
 
   case T_WCHAR_TYPE:
-    buf = (char *) alloca (3 + strlen (WCHAR_TYPE));
-    sprintf (buf, "%s", WCHAR_TYPE);
+    /* In C++, wchar_t is a distinct basic type, and we can expect
+       __wchar_t to be defined by cc1plus.  */
+    if (cplusplus)
+      buf = "__wchar_t";
+    else
+      {
+       buf = (char *) alloca (3 + strlen (WCHAR_TYPE));
+       sprintf (buf, "%s", WCHAR_TYPE);
+      }
     break;
 
   case T_USER_LABEL_PREFIX_TYPE: