`RULE-10-4`: False negatives as rule does not currently consider ternaries

Ouverte Adaptée aux débutants
#821 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
68/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
c
Domaine
devtools

Piste de recherche

Examinez MisraExpressions.qll, en commençant par OperationWithUsualArithmeticConversions et la requête ou les tests RULE-10-4. Confirmez comment les opérations arithmétiques binaires et d'affectation exposent leurs opérandes, puis faites en sorte que le cas de l'expression conditionnelle couvre les opérandes 2 et 3 et vérifiez que l'exemple ternaire fourni n'est plus un faux négatif.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Difficulty-Low false positive/false negative false-negative Impact-Low Standard-MISRA-C
Affected rules
  • RULE-10-4
Description

The text states that the rule applies to usual arithmetic conversions, and the c spec states that for a ? b : c the usual arithmetic conversions are performed on operands b and c. However, OperationWithUsualArithmeticConversions from MisraExpressions.qll holds for this instanceof BinaryOperation and ... or this instanceof AssignArithmeticOperation, it should also hold for this instanceof ConditionalExpr and getLeftOperand() / getRightOperand() should return operands 2 & 3.

Example
void example_function() {
  int x;
  float y;
  bool b;

  b ? x : y; // FALSE NEGATIVE
}
Langage dominant
CodeQL
Étoiles
227
Forks
82
Merge moyen
6 j 7 h
PR mergées (30 j)
9

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de github/codeql-coding-standards

Toutes les issues de github/codeql-coding-standards

Issues similaires

Plus d'issues DevTools

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.