cppinit.c (builtin_array): Update.

        * cppinit.c (builtin_array): Update.
        (init_builtins): Flag builtins to warn if redefined or
        undefined.  Define __GXX_WEAK as a normal macro.
        * cpplib.c (do_undef): Warn if flagged NODE_WARN.
        * cpplib.h (NODE_WARN): New flag.
        * cppmacro.c (builtin_macro): Remove handling of __GXX_WEAK__.
        Handle __STDC__ as a builtin only on Solaris.
        (warn_of_redefinition): Renamed from check_macro_definition.
        Reverse sense of test.  Always warn if NODE_WARN.
        (_cpp_create_definition): Use warn_of_redefinition.  Flag
        any macro beginning with "__STDC_" to require a mandatory
        warning if redefined or undefined.

From-SVN: r40053
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index 2b7a99d..0993792 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -444,6 +444,7 @@
 #define NODE_POISONED	(1 << 1)	/* Poisoned identifier.  */
 #define NODE_BUILTIN	(1 << 2)	/* Builtin macro.  */
 #define NODE_DIAGNOSTIC (1 << 3)	/* Possible diagnostic when lexed.  */
+#define NODE_WARN	(1 << 4)	/* Warn if redefined or undefined.  */
 
 /* Different flavors of hash node.  */
 enum node_type