[PATCH] PR 54789: Fix driver error when GCC_COMPARE_DEBUG is defined

Dmitry Gorbachev d.g.gorbachev@gmail.com
Fri Oct 5 02:49:00 GMT 2012


This patch simplifies process_command a bit by using save_switch and
sets the "known" switch field to "true".


gcc/ChangeLog:

2012-10-05  Dmitry Gorbachev  <d.g.gorbachev@gmail.com>

	PR driver/54789
	* gcc.c (process_command): Use save_switch for synthesized
	-fcompare-debug=* option; mark the switch as known.

--- gcc/gcc.c
+++ gcc/gcc.c
@@ -3961,18 +3961,12 @@ process_command (unsigned int decoded_options_count,
   if (n_infiles == last_language_n_infiles && spec_lang != 0)
     warning (0, "%<-x %s%> after last input file has no effect", spec_lang);

+  /* Synthesize -fcompare-debug flag from the GCC_COMPARE_DEBUG
+     environment variable.  */
   if (compare_debug == 2 || compare_debug == 3)
     {
-      alloc_switch ();
-      switches[n_switches].part1 = concat ("fcompare-debug=",
-					   compare_debug_opt,
-					   NULL);
-      switches[n_switches].args = 0;
-      switches[n_switches].live_cond = 0;
-      switches[n_switches].validated = false;
-      switches[n_switches].known = false;
-      switches[n_switches].ordering = 0;
-      n_switches++;
+      const char *opt = concat ("-fcompare-debug=", compare_debug_opt, NULL);
+      save_switch (opt, 0, NULL, false, true);
       compare_debug = 1;
     }



More information about the Gcc-patches mailing list