C6315
Aviso C6315: Ordem incorreta de operações: bit a bit- e tem precedência maior do que o bit a bit- ou. Adicionar parênteses para esclarecer a intenção
Este aviso indica que uma expressão em um contexto de teste contém ambos bit a bit- e (&) e bit a bit- ou (|) operações, mas faz com que uma constante, porque o bit a bit- ou operação acontece pela última vez. Parênteses devem ser adicionados para esclarecer a intenção.
Exemplo
O código a seguir gera este aviso:
void f( int i )
{
if ( i & 2 | 4 ) // warning
{
// code
}
}
Para corrigir esse aviso, adicione parêntese, conforme mostrado no código a seguir:
void f( int i )
{
if ( i & ( 2 | 4 ) )
{
// code
}
}