Avertissement C6287

Code redondant : les sous-expressions gauche et droite sont identiques

Notes

Cet avertissement est émis lorsqu’une expression contient une logique redondante. L’avertissement peut indiquer une erreur logique. Par exemple, l’utilisation accidentelle de la variable incorrecte. Il peut également s’agir d’un test redondant qui peut être supprimé. Inspectez le code pour vérifier qu’il n’existe aucune erreur logique.

Nom de l’analyse du code : REDUNDANTTEST

Exemple

Le code suivant génère cet avertissement :

void f(int x, int y)
{
  // comparing against x twice is suspicious, should the second comparison use y?
  if ((x == 1) && (x == 1))
  {
    //...
  }
}

Le code suivant montre différentes façons de corriger cet avertissement :

void f(int x, int y)
{
  // Fixed the second comparison to use y
  if ((x == 1) && (y == 1))
  {
     // ...
  }
  
  // If the second comparison was unnecessary it could be removed
  if (x == 1)
  {
     // ...
  }
}