Ah, the original complaint was for a gcc branch which doesn't have your strict-dwarf/discriminator patch.
How's this? Index: gcc/config/s390/s390.c =================================================================== --- gcc/config/s390/s390.c (revision 190017) +++ gcc/config/s390/s390.c (working copy) @@ -1651,12 +1651,21 @@ s390_option_override (void) flag_prefetch_loop_arrays = 1; /* Use the alternative scheduling-pressure algorithm by default. */ maybe_set_param_value (PARAM_SCHED_PRESSURE_ALGORITHM, 2, global_options.x_param_values, global_options_set.x_param_values); + +#ifdef TARGET_TPF + /* Don't emit DWARF3/4 unless specifically selected. The TPF + debuggers do not yet support DWARF 3/4. */ + if (!global_options_set.x_dwarf_strict) + dwarf_strict = 1; + if (!global_options_set.x_dwarf_version) + dwarf_version = 2; +#endif } /* Map for smallest class containing reg regno. */ const enum reg_class regclass_map[FIRST_PSEUDO_REGISTER] = { GENERAL_REGS, ADDR_REGS, ADDR_REGS, ADDR_REGS,