В общем, быстрогрязное решение состоит в том, чтобы завести файлы конфигурации под каждую сборку, и в этих файлах указывать соответствие между именами модулей и именами файлов. Т.е. тупо перечислить каждый модуль и имя файла, в котором он определён. В файлах должна быть директива #include, которая позволит составить единый список всех платформо-независимых файлов. На этом фундаменте можно построить и «поиск по конкретной конфигурации», и «поиск по всем конфигурациям». Недостаток по сравнению с хранением инфы в объектых файлах состоит в том, что нет гарантии, что исходники вообще соответствуют сборке - это даже уязвимость. Т.е. решение достаточно компромиссное по качеству, однако, оно в целом (на мой взгляд), является шагом в правильном направлении. Следующие шаги могут быть такие:

- генерировать такой индекс по правилам, например, «всё, что начинается с «Windows.» - это про
windows и поместить в файл windows.карта-модулей».
- дублировать инфу и в объектном файле - сопоставляя инфу в карте модулей и в объектных файлах, можно будет определить некоторые ошибки devops.

Но эти шаги не являются жизненно необходимыми для реализации «перехода к определению» и принимаемое сейчас решение не препятствует их дальнейшему сообщению. Если есть какие-то замечания (но не про количество бит в байте), буду рад.