C6513
警告 C6513: 無効な注釈です: ElementSizeConst には、追加サイズのプロパティが必要です
[!メモ]
この警告は、ソース・コード注釈言語 (SAL) の使用されていないバージョンを使用するコードにのみ発生します。ここでは、SAL の最新バージョンを使用するようにコードを移植することをお勧めします。詳細については、「SAL 注釈を使って C/C++ のコード障害を減らす方法」を参照してください。
この警告は、ElementSizeConst が注釈にない他のプロパティを必要としていることを示します。ElementSizeConst 単独では、分析プロセスに利用できません。ElementSize の指定に加えて、ValidElementsConst や WritableElementsConst など他のプロパティを指定する必要があります。
使用例
この警告が発生するコード例を次に示します。
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ElementSizeConst=4)] void* pc);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(ElementSizeConst=4)] void* pc);
この警告を解決するには、次のコードを使用します。
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f ([SA_Pre(ElementSizeConst=4, ValidElementsConst=2)] void* pc);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f ([Pre(ElementSizeConst=4, ValidElementsConst=2)] void* pc);
ElementSize プロパティを適切に使用しない場合にも、この警告が生成されます。