Počas fázy sémantickej analýzy sa tento typ chyby objaví. Tieto typy chýb sa zisťujú v čase kompilácie.
jsp
Väčšina chýb v čase kompilácie je chyba rozsahu a deklarácie. Napríklad: nedeklarované alebo viacnásobné deklarované identifikátory. Nezhoda typu je ďalšou chybou v čase kompilácie.
Sémantická chyba môže vzniknúť použitím nesprávnej premennej alebo použitím nesprávneho operátora alebo vykonaním operácie v nesprávnom poradí.
Určitá sémantická chyba môže byť:
- Nekompatibilné typy operandov
- Nedeklarovaná premenná
- Nezhoda skutočného argumentu s formálnym argumentom
Príklad 1: Použitie neinicializovanej premennej:
int i; void f (int m) { m=t; }
V tomto kóde je t nedeklarované, preto zobrazuje sémantickú chybu.
Príklad 2: Typová nekompatibilita:
vypnutie režimu vývojára
int a = 'hello'; // the types String and int are not compatible
Príklad 3: Chyby vo výrazoch:
String s = '...'; int a = 5 - s; // the - operator does not support arguments of type String