C26166

 

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

For the latest documentation on Visual Studio 2017, see C26166 on docs.microsoft.com. warning C26166: Possibly failing to acquire or to hold lock <lock> in function <func>.

Warning C26166 resembles warning C26116 except that the confidence level is lower. For example, the function may contain annotation errors.

The following code shows code that will generate warning C26166.

  
typedef struct _DATA {   
CRITICAL_SECTION cs;   
} DATA;   
  
_Acquires_lock_(p->cs) void Enter(DATA* p) {   
    EnterCriticalSection(&p->cs); // OK   
}   
  
_Acquires_lock_(p->cs) void BAD(DATA* p) {} // Warning C26166  
  

Show: