+ if (flag_gtoggle)
+ {
+ if (debug_info_level == DINFO_LEVEL_NONE)
+ {
+ debug_info_level = DINFO_LEVEL_NORMAL;
+
+ if (write_symbols == NO_DEBUG)
+ write_symbols = PREFERRED_DEBUGGING_TYPE;
+ }
+ else
+ debug_info_level = DINFO_LEVEL_NONE;
+ }
+
+ if (flag_dump_final_insns && !flag_syntax_only && !no_backend)
+ {
+ FILE *final_output = fopen (flag_dump_final_insns, "w");
+ if (!final_output)
+ {
+ error ("could not open final insn dump file %qs: %s",
+ flag_dump_final_insns, strerror (errno));
+ flag_dump_final_insns = NULL;
+ }
+ else if (fclose (final_output))
+ {
+ error ("could not close zeroed insn dump file %qs: %s",
+ flag_dump_final_insns, strerror (errno));
+ flag_dump_final_insns = NULL;
+ }
+ }
+
+ /* Unless over-ridden for the target, assume that all DWARF levels
+ may be emitted, if DWARF2_DEBUG is selected. */
+ if (dwarf_strict < 0)
+ dwarf_strict = 0;
+