Compartilhar via


C28250

Aviso C28250: anotação inconsistente para função: a instância anterior tem um erro.

Observação: Há vários protótipos para essa função.Este aviso compara o protótipo primeiro com o número de instância <number>.

Se uma declaração é feita usando um typedef, a linha onde o typedef aparece é mais útil que a linha da declaração.

Esse aviso se refere a um erro na anotação e reflete a exigência de que as anotações em uma declaração de função devem coincidir com aqueles na definição, exceto se uma função typedef está envolvida.Nesse caso, a função typedef é obtido como definitiva para a declaração e a definição.

Observe que as anotações são normalmente implementadas como macros e uma macro normalmente produzirá várias anotações de baixo nível.Esse aviso é relatado para cada anotação de baixo nível inigualável, para que uma macro única anotação incomparável pode produzir um número de anotações de baixo nível inigualáveis.É melhor simplesmente comparar o código de origem de declaração e definição para certificar-se de que eles são os mesmos.(Triviais diferenças na ordem das anotações não são reportadas).

A comparação é sempre entre a primeira declaração encontrado e a atual.Se houver declarações adicionais, cada declaração é verificada pairwise.No momento não é possível fazer uma comparação diferente em pares, embora seja possível identificar o que há mais de duas declarações/definições.O texto acima do campo contém uma lista das anotações que diferem (em um nível bem baixo) entre as duas instâncias.

Essa mensagem de aviso exibe o texto do código subjacente enviado para o compilador e não as macros são usadas para inserir a anotação no código fonte (como é o caso, sempre que as macros são usadas).Em geral, você não precisa entender as anotações de baixo nível, mas você deve reconhecer que as anotações estão sendo geradas como inconsistentes entre os números de linha relatados na mensagem de erro.Na maioria das vezes, uma inspeção de código-fonte será mais claro por que a inconsistência existe.