C6522
Actualización: noviembre 2007
C6522
Advertencia C6522: Especificación de tamaño no válida: la expresión debe ser de tipo integral
Esta advertencia indica que se esperaba un tipo integral, pero se utilizó un tipo de datos incorrecto. Puede utilizar propiedades de anotación que aceptan el tamaño de un parámetro en términos de otro parámetro, pero debe utilizar el tipo de datos correcto. Para obtener una lista de las propiedades de anotación, vea Propiedades de anotación.
Ejemplo
El código siguiente genera esta advertencia:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, double c);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, double c);
Para corregir esta advertencia, utilice size_t para el tipo de datos del parámetro ValidBytesParam, como se muestra en el código de ejemplo siguiente:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, size_t c);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, size_t c);