C6387

C6387 de aviso: <argument> pode ser <value>: isso não está de acordo com a especificação para a função <function name>: Linhas: x, y

Esse erro é gerado se um parâmetro anotado de função está sendo passado um valor inesperado.Por exemplo, passe um valor nulo potencialmente para um parâmetro que foi marcado com anotação de _In_ gera esse aviso.

Exemplo

O seguinte código gera este aviso como um parâmetro nulo é passado para f(char *):

#include <sal.h>

_Post_ _Null_ char * g();

void f(_In_ char *pch);

void main()
{
    char *pCh = g();
    f(pCh); // Warning C6387
}

Para corrigir este aviso, use o seguinte código:

#include <sal.h>

_Post_ _Notnull_ char * g();

void f(_In_ char *pch);

void main()
{
    char *pCh = g();
    f(pCh);
}

Consulte também

Referência

strlen strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l

Outros recursos

Visão geral de anotação