C6535
Actualización: noviembre 2007
C6535
Advertencia C6535: El búfer no puede ser de tipo <n>, mayor que size_t
Esta advertencia indica que el tamaño del búfer no puede ser mayor que size_t. El tipo size_t se define como un entero sin signo y su tamaño real depende del sistema.
Ejemplo
El código de ejemplo siguiente genera esta advertencia porque se utiliza __int64 para ValidBytes que sólo puede aceptar el tipo size_t:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ValidBytes="c")] char *pc, __int64 c);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ValidBytes="c")] char *pc, __int64 c);
Para corregir esta advertencia, utilice el tipo de datos correcto para el tamaño, 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);
La propiedad ValidBytes no se puede aplicar a un puntero de función.