From 5c60a0172d9cce62e61afd5d851106775a1a48e6 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Wed, 1 Jun 2005 06:55:47 +0000 Subject: opts.h (cl_option_state): New structure. * opts.h (cl_option_state): New structure. (get_option_state): Declare. * opts.c (get_option_state): New function. * toplev.c (option_affects_pch_p): New function. (default_get_pch_validity): Store the state of all options for which option_affects_pch_p returns true. (default_pch_valid_p): Check the state of those options here. Only check target_flags separately if targetm.check_pch_target_Flags is nonnull or if TARGET_SWITCHES is defined. From-SVN: r100430 --- gcc/opts.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'gcc/opts.h') diff --git a/gcc/opts.h b/gcc/opts.h index 1794f7b..962b1ca 100644 --- a/gcc/opts.h +++ b/gcc/opts.h @@ -52,6 +52,14 @@ struct cl_option int var_value; }; +/* Records that the state of an option consists of SIZE bytes starting + at DATA. DATA might point to CH in some cases. */ +struct cl_option_state { + const void *data; + size_t size; + char ch; +}; + extern const struct cl_option cl_options[]; extern const unsigned int cl_options_count; extern const char *const lang_names[]; @@ -77,6 +85,7 @@ extern unsigned num_in_fnames; extern void decode_options (unsigned int argc, const char **argv); extern int option_enabled (int opt_idx); +extern bool get_option_state (int, struct cl_option_state *); extern void print_filtered_help (unsigned int); #endif -- cgit v1.1