L'instruction if ne comporte ni mot-clé introducteur de la partie
then, ni terminateur (pas de fi dans le style des if then else
fi).
Ceci peut provoquer les erreurs suivantes :
Ce que le programmeur a écrit
Ce qu'il aurait dû écrire
if ( a > b) ;
a = b;
if ( a > b)
a = b;
Le problème vient aussi du fait de l'existence de l'instruction nulle.
Ce que le programmeur a écrit
Ce qu'il aurait dû écrire
if (a > b)
if ( x > y) x = y;
else
...
if (a > b)
{ if ( x > y) x = y; }
else
...
On rappelle qu'un else est raccroché au premier if.