C6315

Mise à jour : novembre 2007

C6315

Avertissement C6315 : Ordre des opérations incorrect : l'opérateur de bits AND a une priorité plus élevée que l'opérateur de bits OR. Ajoutez des parenthèses pour préciser clairement le but recherché.

Cet avertissement indique qu'une expression dans un contexte de test contient des opérations de bits AND (&) et OR (|), mais provoque une constante car l'opération de bits OR se produit en dernier. Des parenthèses doivent être ajoutées pour clarifier l'intention.

Exemple

Le code suivant génère cet avertissement :

void f( int i )
{
  if ( i & 2 | 4 ) // warning
  {
    // code
  }
}

Pour corriger cet avertissement, ajoutez des parenthèses comme indiqué dans le code suivant :

void f( int i )
{
  if ( i & ( 2 | 4 ) )
  {
    // code
  }
}