Compartir a través de


C6516

Actualización: noviembre 2007

C6516

Advertencia C6516: Anotación no válida: no se especificaron propiedades del atributo <nombre>

Esta advertencia indica que no se ha especificado ninguna propiedad en el atributo o bien la propiedad que se ha especificado no es válida; por consiguiente, el atributo no puede considerarse completo.

Ejemplo

El código siguiente genera esta advertencia porque Deref=1 sólo especifica el nivel de direccionamiento indirecto, pero esta información por sí sola no le sirve a la herramienta de análisis:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(Deref=1)] char* pc);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(Deref=1)] char* pc);

Para corregir esta advertencia, se necesita otra propiedad, como Access, para indicar a la herramienta de análisis qué se debe aplicar a los elementos que son objeto de la eliminación de referencias. El código siguiente corrige esta advertencia:

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

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(Deref=1, Access=Read)] char* pc);