Share via


C6281

Note

This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

Warning 6281 - incorrect order of operations: relational operators have higher precedence than bitwise operators

This warning indicates a possible error in the operator precedence. This might produce incorrect results. You should check the precedence and use parentheses to clarify the intent. Relational operators (<, >, <=, >=, ==, != ) have higher precedence than bitwise operators (& | ^).

Example

The following code generates this warning:

#include <stdlib.h>  
#define FORMAT 1  
#define TYPE 2  
  
void f(int input)  
{  
  if (FORMAT & TYPE != input)  
  {  
    // code...  
  }  
}  

The following code uses parentheses to correct this warning:

#include <stdlib.h>  
#define FORMAT 1  
#define TYPE 2  
  
void f(int input)  
{  
  if ((FORMAT & TYPE) != input)  
  {  
    // code...  
  }  
}  

See Also

Compiler Warning (level 3) C4554