diff options
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index ff0d8a3..de86b38 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1874,7 +1874,8 @@ process_options (void) if (debug_info_level < DINFO_LEVEL_NORMAL || debug_hooks->var_location == do_nothing_debug_hooks.var_location) { - if (flag_var_tracking == 1) + if (flag_var_tracking == 1 + || flag_var_tracking_uninit == 1) { if (debug_info_level < DINFO_LEVEL_NORMAL) warning (0, "variable tracking requested, but useless unless " @@ -1884,6 +1885,7 @@ process_options (void) "by this debug format"); } flag_var_tracking = 0; + flag_var_tracking_uninit = 0; } if (flag_rename_registers == AUTODETECT_VALUE) @@ -1893,6 +1895,12 @@ process_options (void) if (flag_var_tracking == AUTODETECT_VALUE) flag_var_tracking = optimize >= 1; + /* If the user specifically requested variable tracking with tagging + uninitialized variables, we need to turn on variable tracking. + (We already determined above that variable tracking is feasible.) */ + if (flag_var_tracking_uninit) + flag_var_tracking = 1; + /* If auxiliary info generation is desired, open the output file. This goes in the same directory as the source file--unlike all the other output files. */ |