C6522
Обновлен: Ноябрь 2007
C6522
Предупреждение C6522. Недопустимая спецификация размера: выражение должно иметь тип целого числа
Данное предупреждение означает, что ожидался целочисленный тип, однако использовался неверный тип данных. Можно использовать свойства аннотации, которые принимают размер параметра в терминах другого параметра, однако необходимо использовать правильный тип данных. Полный список свойств аннотации см. в разделе Свойства заметок.
Пример
Данное предупреждение создается в следующем коде:
// 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);
Для устранения этого предупреждения в качестве типа данных параметра ValidBytesParam используйте size_t, как указано в следующем коде:
// 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);