C6512
warning C6512: invalid annotation: Null property must be Maybe if the Valid property is No
This warning indicates that Null is considered a valid value; therefore, Null cannot be used with the Valid property value of No.
Example
The following code generates this warning:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(Null=SA_Yes, Valid=SA_No)] char *pc);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(Null=Yes, Valid=No)] char *pc);
To correct this warning, use the following code:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(Null=SA_Yes, Valid=SA_Maybe)] char *pc);
-or-
void f([SA_Pre(Null=SA_Yes, Valid=SA_Yes)] char *pc);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(Null=Yes, Valid=Maybe)] char *pc);
- or-
void f([Pre(Null=Yes, Valid=Yes)] char *pc);