Sdílet prostřednictvím


C6516

upozornění C6516: neplatní poznámka: pro atribut <název> nejsou zadány žádné parametry

[!POZNÁMKA]

Toto upozornění se zobrazuje pouze v kódu, který používá zastaralou verzi jazyka SAL.Doporučujeme převedení kódu tak, aby používal nejnovější verzi jazyka SAL.Další informace naleznete v tématu Pomocí poznámek SAL snížit vady kód C/C++.

Toto upozornění znamená, že buď v atributu nebyla zadána žádná vlastnost, nebo zadaná vlastnost není platná, tudíž nelze atribut považovat za kompletní.

Příklad

Následující kód generuje toto upozornění, protože parametr Deref=1 určuje pouze úroveň nepřímých odkazů, ale tato informace sama o sobě nepomáhá nástroji pro analýzu:

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

Chcete-li opravit toto upozornění, je vyžaduje nástroj pro analýzu jinou vlastnost, například Access, pro označení, co musí být vynuceno na přímo odkazovaných položkách.Následují kód opravuje toto upozornění:

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