aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gcc.c14
2 files changed, 10 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6510337..1730844 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-11-08 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.
+
2012-11-08 Jakub Jelinek <jakub@redhat.com>
PR target/54308
diff --git a/gcc/gcc.c b/gcc/gcc.c
index a795981..b80af44 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -3978,18 +3978,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;
}