https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105088
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> --- See the "Note that if a .debug_line_str section is present, both the compilation unit debugging information entry and the line number header can share a single copy of the current directory name string." and "Note that if a .debug_line_str section is present, both the compilation unit debugging information entry and the line number header can share a single copy of the current file name string." comments. The reason for the duplication (DW_AT_comp_dir of CU vs. dir 0 entry in .debug_line and DW_AT_name of CU vs. file 0 entry in .debug_line) is so that .debug_info can be stripped and .debug_line* kept.