The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at C26140.

warning C26140: Undefined lock kind <lock> in annotation <annotation> on lock <lock>.

_Has_lock_kind_(MUTEXa) HANDLE gMutex;   
struct CorrectExample   
    _Has_lock_kind_(_Lock_kind_mutex_) HANDLE mMutex;   
    _Guarded_by_(mMutex) int mData;   
_When_(return == WAIT_OBJECT_0 || return == WAIT_ABANDONED, _Acquires_lock_(gMutex))  
DWORD UndefinedLockKind() // Warning C26140   
    DWORD result = WaitForSingleObject(gMutex, 1000);   
    return result;