Предупреждение C6516
Недопустимая заметка: свойства, указанные для атрибута name
Примечание.
Это предупреждение возникает только в коде, используюющем устаревшую версию языка заметок исходного кода (SAL). Рекомендуется перенести код для использования последней версии SAL. Дополнительные сведения см. в статье "Использование заметок SAL для уменьшения дефектов кода C/C++".
Замечания
Это предупреждение указывает, что ни одно свойство не указано в атрибуте, либо указанное свойство недопустимо; поэтому атрибут не может считаться полным.
Имя анализа кода: NO_PROPERTIES_ON_ATTRIBUTE
Пример
Следующий код создает это предупреждение, так как Deref=1 указывает только уровень косвенного обращения, но эта информация не помогает средству анализа:
// 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);
Чтобы исправить это предупреждение, необходимо указать другому свойству, например Access, чтобы указать инструменту анализа, что должно быть применено к элементам, на которые должны быть удалены ссылки. Следующий код исправляет это предупреждение:
// 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);