OSDN Git Service

(init_decl_processing): Use unsigned_intQI_type_node,
authorrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 9 Jan 1993 09:09:53 +0000 (09:09 +0000)
committerrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3167 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/c-decl.c

index a980e88..76f2272 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);