Compartilhar via


C6309

Aviso C6309: argumento <number>é nulo: Ele não está de acordo com a especificação de função de <function>

Esta mensagem indica que o código está passando um parâmetro nulo inesperado sistema autônomo um argumento para a API especificada.Passar um parâmetro nulo a uma função que espera um parâmetro não-nulo pode causar uma exceção sem tratamento.

Exemplo

O código a seguir gera um aviso 6309 e 6387:

#include <codeanalysis/sourceannotations.h>
using namespace vc_attributes;


void f([Pre(Null=No)] void*);
[returnvalue:Post(Null=Yes)] void* g();

void main()
{
   f(g()); // 6309 and 6387
}

Para corrigir os avisos, use o seguinte código:

#include <codeanalysis/sourceannotations.h>
using namespace vc_attributes;


void f([Pre(Null=No)] void*);
[returnvalue:Post(Null=No)] void* g(); // pointer not null

void main()
{
   f(g());
}

Consulte também

Referência

C6387