aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.c
diff options
context:
space:
mode:
authorDmitry Gorbachev <d.g.gorbachev@gmail.com>2012-11-08 20:13:13 +0000
committerJakub Jelinek <jakub@gcc.gnu.org>2012-11-08 21:13:13 +0100
commit3ad2d621f5734d25a75ef3bfa27bb5efe832f066 (patch)
tree870f298e7cfa4646a81ea4c81d1b771060207602 /gcc/gcc.c
parent1f242a02061f90632dba3025bebaed32e43d6340 (diff)
downloadgcc-3ad2d621f5734d25a75ef3bfa27bb5efe832f066.zip
gcc-3ad2d621f5734d25a75ef3bfa27bb5efe832f066.tar.gz
gcc-3ad2d621f5734d25a75ef3bfa27bb5efe832f066.tar.bz2
re PR driver/54789 (Error in GCC driver when defining GCC_COMPARE_DEBUG)
PR driver/54789 * gcc.c (process_command): Use save_switch for synthesized -fcompare-debug=* option; mark the switch as known. From-SVN: r193337
Diffstat (limited to 'gcc/gcc.c')
-rw-r--r--gcc/gcc.c14
1 files changed, 4 insertions, 10 deletions
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;
}