C6518
C6518 de aviso: Anotação inválido: A propriedade “SAL_writableTo” não pode ser especificada como uma condição anterior nos buffers que são não modificável: “_Param_ (1)”
Este aviso indica que um conflito entre existe um valor de propriedade de SAL_writableTo e uma propriedade modificável.Isso indica que uma propriedade normalmente modificável não tem acesso de gravação para o parâmetro que está sendo anotado.
Exemplo
O seguinte código gera este aviso como a anotação de _Out_ compila para incluir uma propriedade de SAL_writableTo , que não permite acesso de gravação:
#include <sal.h>
void f(_Out_ const char* pc)
{
//code that can't write to *pc ...
}
Para corrigir este aviso, use o seguinte código:
#include <sal.h>
void f(_Out_ char* pc)
{
pc = "Hello World";
//code ...
}