Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Mise à jour : novembre 2007
C6309
Avertissement C6309 : L'argument <numéro> est null : ceci n'est pas conforme à la spécification de fonction de <fonction>
Ce message indique que le code passe un paramètre NULL inattendu comme argument à l'API spécifiée. Le passage d'un paramètre null à une fonction qui attend un paramètre non null peut générer une exception non gérée.
Exemple
Le code suivant génère les avertissements 6309 et 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
}
Pour corriger les deux avertissements, utilisez le code suivant :
#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());
}