C6500C6500

Advertencia C6500: anotación no válida: valor <nombre > propiedad no es válidawarning C6500: invalid annotation: value for <name> property is invalid

Note

Esta advertencia se produce solo en el código que está usando una versión en desuso del lenguaje de anotación de código fuente (SAL).This warning occurs only in code that is using a deprecated version of the source-code annotation language (SAL). Se recomienda trasladar el código para usar la versión más reciente de SAL.We recommend that you port your code to use the latest version of SAL. Para obtener más información, consulte utilizar anotaciones SAL para reducir defectos de código de C o C++.For more information, see Using SAL Annotations to Reduce C/C++ Code Defects.

Esta advertencia indica que un valor de propiedad usado en la anotación no es válido.This warning indicates that a property value used in the annotation is not valid. Por ejemplo, puede producirse si se utiliza un nivel incorrecto de desreferenciación en la propiedad Deref, o si utiliza un valor constante que es mayor que size_t para propiedades como ElementSize.For example, it can occur if an incorrect level of dereference is used in the Deref property, or if you use a constant value that is larger than size_t for properties like ElementSize.

EjemploExample

El código siguiente genera esta advertencia porque se utiliza un nivel incorrecto de desreferenciación en la condición Pre:The following code generates this warning because an incorrect level of dereference is used in the Pre condition:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f( [SA_Pre( Deref=2, Access=SA_Read )] char buffer[] );

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;

void f( [Pre( Deref=2, Access=Read )] char buffer[] );

Para corregir esta advertencia, especifique el nivel correcto de desreferenciación, tal como se muestra en el código de ejemplo siguiente:To correct this warning, specify the correct level of dereference, as shown in the following sample code:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f( [SA_Pre( Deref=1, Access=SA_Read )] char buffer[] );

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;

void f( [Pre( Deref=1, Access=Read )] char buffer[] );

Esta advertencia se genera para las condiciones Pre y Post.This warning is generated for both Pre and Post conditions.