Avertissement C6518

Annotation non valide : la propriété « SAL_writableTo » peut ne pas être spécifiée comme condition préalable sur les mémoires tampons qui ne sont pas accessibles en écriture : « Paramètre ».

Notes

Cet avertissement indique qu’un conflit existe entre une SAL_writableTo valeur de propriété et une propriété accessible en écriture. L’avertissement indique généralement qu’une propriété accessible en écriture n’a pas d’accès en écriture au paramètre annoté.

Nom de l’analyse du code : WRITABLE_SIZE_ON_NON_WRITABLE_BUFFER

Exemple

Le code suivant génère cet avertissement, car l’annotation _Out_ compile pour inclure une SAL_writableTo propriété, qui n’autorise pas l’accès en écriture :

#include <sal.h>
void f(_Out_ const char* pc)
{
    //code that can't write to *pc ...
}

Pour corriger cet avertissement, utilisez le code suivant :

#include <sal.h>
void f(_Out_  char* pc)
{
    pc = "Hello World";
    //code ...
}