A separate debuginfo file is a special animal and I don't think we should
expect that every random thing that handles fully-formed ELF files will
handle debuginfo files without being confused.
I think extra header bits and such are a rat-hole of effort, hassle, and
slow deployment, with very little payoff. I'm against that idea.
Heuristically, a separate debuginfo file with phdrs can be recognized by
there being SHT_NOBITS sections whose sh_addr places them in parts of
PT_LOAD segments that cannot be the bss-like case. If any section with
SHT_NOBITS,SHF_ALLOC has its sh_addr fall inside the range [p_vaddr,
p_vaddr+p_filesz) of a PT_LOAD segment, it's either a debuginfo file or a
malformed oddball.