https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64498
--- Comment #2 from Jan Hubicka <hubicka at ucw dot cz> --- > Problem is hidden in flag_var_tracking_assignments, which is set to false. > Thus, MAY_HAVE_DEBUG_INSNS is set to false. Unfortunately, Firefox contains > couple of third party libraries that have -g as a default option. So that DCE > after a statements removal does not remove debug statements that use result of > a statement and verifier fails. flag_var_tracking_assignments is marked as Optimization in common.opt while rest of debug machinery is not Optimization. This means that we try to preserve assignments in functions that was compiled with -g at compile time, but then we never consume it.... Shall we drop flag_var_tracking_assignments to 0 and remove the debug statements after streaming in in these cases? Also inliner probably needs to remove the statements when it inlines from function with flag_var_tracking_assignments to one with !flag_var_tracking_assignments Honza