Problema: Eu tenho um grande projeto do Visual C ++ que estou tentando migrar para o Visual Studio 2010. É uma enorme mistura de coisas de várias fontes e de várias idades. Estou tendo problemas porque algo está incluindo ambos winsock.h
e winsock2.h
.
Pergunta: Quais ferramentas e técnicas existem para exibir a #include
hierarquia de um arquivo de origem do Visual Studio C ++?
Eu sei sobre cl /P
obter a saída do pré-processador, mas isso não mostra claramente qual arquivo inclui quais outros arquivos (e, neste caso, a /P
saída tem 376.932 linhas de comprimento 8)
Em um mundo perfeito, eu gostaria de uma exibição hierárquica de quais arquivos incluem quais outros, junto com os números das linhas, para que eu possa pular para as fontes:
source.cpp(1)
windows.h(100)
winsock.h
some_other_thing.h(1234)
winsock2.h
gcc -H -fsyntax-only ...
para gerar a hierarquia. Créditos para stackoverflow.com/a/18593344/427545