Avertissement C6501

Conflit d’annotation : la propriété 'name' est en conflit avec la propriété précédemment spécifiée

Remarque

Cet avertissement se produit uniquement dans le code qui utilise une version déconseillée du langage d’annotation de code source (SAL). Nous vous recommandons de porter votre code pour utiliser la dernière version de SAL. Pour plus d’informations, consultez Utilisation des annotations SAL pour réduire les défauts de code C/C++.

Notes

Cet avertissement indique la présence de propriétés en conflit dans l’annotation. L’avertissement se produit généralement lorsque plusieurs propriétés qui servent à des fins similaires sont utilisées pour annoter un paramètre ou une valeur de retour. Pour corriger l’avertissement, vous devez choisir la propriété qui répond le mieux à vos besoins.

Nom de l’analyse du code : CONFLICTING_ATTRIBUTE_PROPERTY_VALUES

Exemple

Le code suivant génère cet avertissement, car ValidElementsConst et ValidBytesConst fournissent un mécanisme permettant de lire les données valides :

// C
#include <CodeAnalysis\SourceAnnotations.h>
void fd([SA_Pre(ValidElementsConst =4, ValidBytesConst =4)] char pch[]);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f( [Pre(ValidElementsConst=4, ValidBytesConst=4 )] char pch[] );

Pour corriger cet avertissement, utilisez la propriété la plus appropriée, comme indiqué dans le code suivant :

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f( [SA_Pre(ValidElementsConst=4)] char pch[] );

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f( [Pre(ValidElementsConst=4)] char pch[] );