OSDN Git Service

* config/s390/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
[pf3gnuchains/gcc-fork.git] / gcc / c-common.h
index f44b0c3..aab0e33 100644 (file)
@@ -58,7 +58,7 @@ enum rid
   RID_VOLATILE, RID_SIGNED,  RID_AUTO,  RID_RESTRICT,
 
   /* C extensions */
-  RID_BOUNDED, RID_UNBOUNDED, RID_COMPLEX,
+  RID_BOUNDED, RID_UNBOUNDED, RID_COMPLEX, RID_THREAD,
 
   /* C++ */
   RID_FRIEND, RID_VIRTUAL, RID_EXPLICIT, RID_EXPORT, RID_MUTABLE,
@@ -328,6 +328,8 @@ extern tree gettags                         PARAMS ((void));
 extern int (*lang_missing_noreturn_ok_p)       PARAMS ((tree));
 
 extern int yyparse                             PARAMS ((void));
+extern void free_parser_stacks                 PARAMS ((void));
+
 extern stmt_tree current_stmt_tree              PARAMS ((void));
 extern tree *current_scope_stmt_stack           PARAMS ((void));
 extern void begin_stmt_tree                     PARAMS ((tree *));
@@ -376,6 +378,14 @@ extern c_language_kind c_language;
 /* Nonzero if prepreprocessing only.  */
 extern int flag_preprocess_only;
 
+/* Nonzero if an ISO standard was selected.  It rejects macros in the
+   user's namespace.  */
+extern int flag_iso;
+
+/* Nonzero if -undef was given.  It suppresses target built-in macros
+   and assertions.  */
+extern int flag_undef;
+
 /* Nonzero means give string constants the type `const char *', rather
    than `char *'.  */
 
@@ -389,6 +399,9 @@ extern int flag_short_double;
 
 extern int flag_short_wchar;
 
+/* Nonzero means warn about use of multicharacter literals.  */
+extern int warn_multichar;
+
 /* Warn about *printf or *scanf format/argument anomalies.  */
 
 extern int warn_format;
@@ -401,6 +414,10 @@ extern int warn_format_y2k;
 
 extern int warn_format_extra_args;
 
+/* Warn about zero-length formats.  */
+
+extern int warn_format_zero_length;
+
 /* Warn about non-literal format arguments.  */
 
 extern int warn_format_nonliteral;
@@ -409,6 +426,11 @@ extern int warn_format_nonliteral;
 
 extern int warn_format_security;
 
+/* Warn about NULL being passed to argument slots marked as requiring
+   non-NULL.  */
+
+extern int warn_nonnull;
+
 /* Warn about possible violations of sequence point rules.  */
 
 extern int warn_sequence_point;
@@ -505,6 +527,12 @@ extern const char *fname_as_string         PARAMS ((int));
 extern tree fname_decl                         PARAMS ((unsigned, tree));
 extern const char *fname_string                        PARAMS ((unsigned));
 
+extern void check_function_arguments           PARAMS ((tree, tree));
+extern void check_function_arguments_recurse   PARAMS ((void (*) (void *,
+                                                                  tree,
+                                                                  unsigned HOST_WIDE_INT),
+                                                        void *, tree,
+                                                        unsigned HOST_WIDE_INT));
 extern void check_function_format              PARAMS ((int *, tree, tree));
 extern void set_Wformat                                PARAMS ((int));
 extern tree handle_format_attribute            PARAMS ((tree *, tree, tree,
@@ -530,12 +558,13 @@ extern tree c_expand_expr_stmt                    PARAMS ((tree));
 extern void c_expand_start_cond                        PARAMS ((tree, int, tree));
 extern void c_finish_then                       PARAMS ((void));
 extern void c_expand_start_else                        PARAMS ((void));
-extern void c_finish_else                   PARAMS ((void));
+extern void c_finish_else                      PARAMS ((void));
 extern void c_expand_end_cond                  PARAMS ((void));
 /* Validate the expression after `case' and apply default promotions.  */
 extern tree check_case_value                   PARAMS ((tree));
-/* Concatenate a list of STRING_CST nodes into one STRING_CST.  */
-extern tree combine_strings                    PARAMS ((tree));
+extern tree fix_string_type                    PARAMS ((tree));
+struct varray_head_tag;
+extern tree combine_strings            PARAMS ((struct varray_head_tag *));
 extern void constant_expression_warning                PARAMS ((tree));
 extern tree convert_and_check                  PARAMS ((tree, tree));
 extern void overflow_warning                   PARAMS ((tree));
@@ -867,6 +896,8 @@ extern int c_staticp                            PARAMS ((tree));
 
 extern int c_common_unsafe_for_reeval          PARAMS ((tree));
 
+extern const char *init_c_lex                  PARAMS ((const char *));
+
 /* Information recorded about each file examined during compilation.  */
 
 struct c_fileinfo