(init_decl_processing): Use unsigned_intQI_type_node,
authorRichard Stallman <rms@gnu.org>
Sat, 9 Jan 1993 09:09:53 +0000 (09:09 +0000)
committerRichard Stallman <rms@gnu.org>
Sat, 9 Jan 1993 09:09:53 +0000 (09:09 +0000)
not unsigned_char_..., as index type for ..._array_type_node.

(pushdecl): Avoid multiple extern decl mismatch warnings
when previous decl is built-in.

From-SVN: r3167

gcc/c-decl.c

index a980e88f22919a592597d73b2f228f0315e450c1..76f227241667981fcb6ed02f66b6af71d1ab4f1d 100644 (file)
@@ -1820,7 +1820,9 @@ pushdecl (x)
          else
            decl = 0;
 
-         if (decl && ! comptypes (TREE_TYPE (x), TREE_TYPE (decl)))
+         if (decl && ! comptypes (TREE_TYPE (x), TREE_TYPE (decl))
+             /* If old decl is built-in, we already warned if we should.  */
+             && !DECL_BUILT_IN (decl))
            {
              pedwarn_with_decl (x,
                                 "type mismatch with previous external decl");
@@ -2649,13 +2651,13 @@ init_decl_processing ()
      With luck nothing will ever really depend on the length of this
      array type.  */
   char_array_type_node
-    = build_array_type (char_type_node, unsigned_char_type_node);
+    = build_array_type (char_type_node, unsigned_intQI_type_node);
   /* Likewise for arrays of ints.  */
   int_array_type_node
-    = build_array_type (integer_type_node, unsigned_char_type_node);
+    = build_array_type (integer_type_node, unsigned_intQI_type_node);
   /* This is for wide string constants.  */
   wchar_array_type_node
-    = build_array_type (wchar_type_node, unsigned_char_type_node);
+    = build_array_type (wchar_type_node, unsigned_intQI_type_node);
 
   default_function_type
     = build_function_type (integer_type_node, NULL_TREE);