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);