C6518
C6518 de advertencia: Anotación no válida: La propiedad “SAL_writableTo” no se puede especificar como una condición previa en búferes que no son programables: “_Param_ (1)”
Esta advertencia indica que existe un conflicto entre un valor de propiedad de SAL_writableTo y una propiedad de escritura.Normalmente, indica que una propiedad de escritura no tiene acceso de escritura al parámetro que se anota.
Ejemplo
El código siguiente genera esta advertencia porque las compilaciones de anotación de _Out_ para incluir una propiedad de SAL_writableTo, que no permite el acceso de escritura:
#include <sal.h>
void f(_Out_ const char* pc)
{
//code that can't write to *pc ...
}
Para corregir esta advertencia, utilice el código siguiente:
#include <sal.h>
void f(_Out_ char* pc)
{
pc = "Hello World";
//code ...
}