C6387

 

For the latest documentation on Visual Studio 2017 RC, see Visual Studio 2017 RC Documentation.

warning C6387: <argument> may be <value>: this does not adhere to the specification for the function <function name>: Lines: x, y

This warning is raised if an annotated function parameter is being passed an unexpected value. For example, passing a potentially null value to a parameter that is marked with _In_ annotation generates this warning.

The following code generates this warning because a null parameter is passed to f(char *):

  
#include <sal.h>  
  
_Post_ _Null_ char * g();  
  
void f(_In_ char *pch);  
  
void main()  
{  
    char *pCh = g();  
    f(pCh); // Warning C6387  
}  

To correct this warning, use the following code:

  
#include <sal.h>  
  
_Post_ _Notnull_ char * g();  
  
void f(_In_ char *pch);  
  
void main()  
{  
    char *pCh = g();  
    f(pCh);  
}  

Annotation Overview
strlen, wcslen, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l

Show: