Compartilhar via


C6516

C6516 de aviso: anotação inválido: as propriedades especificadas para o atributo de <name>

ObservaçãoObservação

Esse erro ocorre somente o código que está usando uma versão substituído de linguagem de anotação de código-fonte (SAL).Recomendamos que você mova seu código para usar a versão mais recente de SAL.Para mais informações, consulte Usando o SAL anotações para reduzir os defeitos no código C/C++.

Este aviso indica que nenhuma propriedade ou foi especificada no atributo ou a propriedade que foi especificada não é válido; portanto, o atributo não pode ser considerado completo.

Exemplo

O seguinte código gera este aviso como Deref=1 especificar apenas o nível de indirection, mas essa informação não apenas ajuda a ferramenta de análise:

// 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 corrigir este aviso, outra propriedade, como acesso, é necessária para indicar a ferramenta de análise o que deve ser aplicada nos itens de- referenciados.O código a seguir corrigir esse erro:

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