Compilateurs

Quel exemple d'erreur détectée par l'analyse sémantique d'un compilateur est le plus approprié ?

  1. AUne valeur de type incompatible est affectée à une variable destinée à contenir un entier
  2. BLe point-virgule de fin d'instruction a été oublié
  3. CUne division par 0 s'est produite en cours d'exécution du programme
Afficher la réponse et l'explication

Réponse : A. Une valeur de type incompatible est affectée à une variable destinée à contenir un entier

L'analyse sémantique examine, pour un programme grammaticalement correct, la cohérence des types, l'absence de noms non déclarés, l'exactitude du nombre d'arguments passés aux fonctions, etc. L'affectation d'un type incompatible est une erreur typique détectée à ce stade. L'oubli d'un point-virgule est une erreur de grammaire, détectée par l'analyse syntaxique. La division par 0 est une erreur d'exécution qui n'apparaît qu'à l'exécution et que le compilateur ne peut généralement pas détecter.

S'entraîner sur ce thème Retour au thème

Autres questions sur Compilateurs

  1. Quelle caractéristique de l'arbre syntaxique abstrait (AST) est correcte ?
  2. Quel est le principal avantage d'utiliser, à l'intérieur d'un compilateur, une représentation intermédiaire (IR) indépendante du langage source comme du CPU ?
  3. Quelle définition du bloc de base est correcte ?
  4. Dans un graphe de flot de contrôle, quelle combinaison de ce que représentent nœuds et flèches est correcte ?
  5. Quelle caractéristique d'une représentation intermédiaire en forme SSA est correcte ?

Comparatifs sur ce thème