Existe uma maneira de ignorar referências indefinidas não utilizadas?
Suponha que eu tenha dois arquivos de origem -UndefErr.cpp:
#include <cstdio>
void UndefFunc();
void Func2(){UndefFunc();}
void Func1(){printf("Hi\n");}
E amain.cpp:
void Func1();
int main(){
Func1();
return 0;
}
Como você vê noUndefErr.cpp aFunc2()
irá desencadear um erro, por usar o indefinidoUndefFunc()
. No entanto, a função principal não se importa com oFunc2()
! De acordo comuma pergunta relevante Eu poderia passar uma opção--unresolved-symbols = ignorar-em-objetos-arquivos para o vinculador, mas quero uma coisa meio diferente. Preciso de um vinculador para saber se as funções indefinidas são usadas em algum lugar e só então falham.
O motivo para fazer uma pergunta tão estranha é que estou tentando usar umlwIPe é difícil entender todas as suas dependências(Eu só preciso de TCP / IP), e não consigo encontrar tutoriais na internet. Então eu pensei que poderia compilar mais(ou todos) os arquivos .c separadamente e escreva alguns testes simples para ver o que ele faz. Mas essa abordagem se depara com "referências indefinidas", a maioria provavelmente irrelevante para o caso de uso.