Compartir a través de


C6309

Actualización: noviembre 2007

C6309

Advertencia C6309: El argumento <número> es nulo: éste no cumple con la especificación de la función de <función>

Este mensaje indica que el código está pasando un parámetro NULL inesperado como argumento a la API especificada. Pasar un parámetro null a una función que espera un parámetro no null puede producir una excepción no controlada.

Ejemplo

El código siguiente genera las advertencias 6309 y 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 corregir ambas advertencias, utilice el código siguiente:

#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());
}

Vea también

Referencia

C6387