Одним из преимуществ старого формата C7 является то, что он все-в-одном, хранится в EXE, а не в отдельной PDB и EXE. Это означает, что вы никогда не можете иметь несоответствие. Инструменты разработчика VS будут проверять соответствие PDB своему EXE-файлу до того, как будут его использовать, но, безусловно, проще иметь один EXE-файл со всем необходимым.
Это добавляет новые проблемы, связанные с необходимостью извлечения отладочной информации при выпуске, и гигантского EXE-файла, не говоря уже о древнем формате и отсутствии поддержки других современных функций, таких как minrebuild, но все же может быть полезным, когда Вы пытаетесь сделать вещи максимально простыми. Один файл проще, чем два.
Не то чтобы я когда-либо использовал формат C7, я просто выкладываю это как возможное преимущество, поскольку вы спрашиваете.
Кстати, именно так GCC работает на паре платформ, которые я использую. Формат DWARF2 похоронен в выходных ELF. Люди Unix думают, что они такие веселые. :)
Кстати, формат PDB может быть проанализирован с использованием DIA SDK .