]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/opts.h
Optimize ODR enum streaming
[thirdparty/gcc.git] / gcc / opts.h
index e5723a946f7b4417c4cecf4773df683783aa82ff..8f594b46e330b9ac5497035b93f19a39e2d4928c 100644 (file)
@@ -1,5 +1,5 @@
 /* Command line option handling.
-   Copyright (C) 2002-2019 Free Software Foundation, Inc.
+   Copyright (C) 2002-2020 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -345,7 +345,6 @@ extern void init_options_once (void);
 extern void init_options_struct (struct gcc_options *opts,
                                 struct gcc_options *opts_set);
 extern void init_opts_obstack (void);
-extern void finalize_options_struct (struct gcc_options *opts);
 extern void decode_cmdline_options_to_array_default_mask (unsigned int argc,
                                                          const char **argv, 
                                                          struct cl_decoded_option **decoded_options,
@@ -359,7 +358,8 @@ extern void decode_options (struct gcc_options *opts,
                            location_t loc,
                            diagnostic_context *dc,
                            void (*target_option_override_hook) (void));
-extern int option_enabled (int opt_idx, void *opts);
+extern int option_enabled (int opt_idx, unsigned lang_mask, void *opts);
+
 extern bool get_option_state (struct gcc_options *, int,
                              struct cl_option_state *);
 extern void set_option (struct gcc_options *opts,
@@ -460,4 +460,19 @@ extern bool parse_and_check_align_values (const char *flag,
                                          bool report_error,
                                          location_t loc);
 
+extern void parse_options_from_collect_gcc_options (const char *, obstack *,
+                                                   int *);
+
+extern void prepend_xassembler_to_collect_as_options (const char *, obstack *);
+
+/* Set OPTION in OPTS to VALUE if the option is not set in OPTS_SET.  */
+
+#define SET_OPTION_IF_UNSET(OPTS, OPTS_SET, OPTION, VALUE) \
+  do \
+  { \
+    if (!(OPTS_SET)->x_ ## OPTION) \
+      (OPTS)->x_ ## OPTION = VALUE; \
+  } \
+  while (false)
+
 #endif