Compartir a través de


C6501

Advertencia C6501: Conflicto de anotación: la propiedad <nombre> entra en conflicto con la propiedad especificada anteriormente

[!NOTA]

La advertencia sólo aparece en el código que está utilizando una versión desusada del lenguaje de anotación de código fuente (SAL).Se recomienda migrar el código para usar la última versión de SAL.Para obtener más información, vea Utilizar anotaciones SAL para reducir defectos de código de C/C++.

Esta advertencia indica la presencia de propiedades contradictorias en la anotación.Esto se produce normalmente cuando varias propiedades que sirven para un propósito similar se utilizan para anotar un parámetro o valor devuelto.Para corregir la advertencia, debe elegir la propiedad que mejor satisfaga su necesidad.

Ejemplo

El código siguiente genera esta advertencia porque ValidElementsConst y ValidBytesConst proporcionan un mecanismo para permitir que se lean datos válidos:

// 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[] );

Para corregir esta advertencia, utilice la propiedad más adecuada, como se muestra en el código siguiente:

// 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[] );

Vea también

Otros recursos

ValidElementsConst

ValidBytesConst