Error semàntic
Durant la fase d'anàlisi semàntica apareix aquest tipus d'error. Aquest tipus d'error es detecten en temps de compilació.
La majoria dels errors de temps de compilació són errors d'abast i de declaració. Per exemple: identificadors no declarats o múltiples declarats. El tipus no coincideix és un altre error de compilació.
L'error semàntic pot sorgir utilitzant la variable incorrecta o utilitzant un operador incorrecte o fent operacions en ordre incorrecte.
Alguns errors semàntics poden ser:
- Tipus d'operands incompatibles
- Variable no declarada
- No concorda l'argument real amb l'argument formal
Exemple 1: Ús d'una variable no inicialitzada:
int i; void f (int m) { m=t; } En aquest codi, t no està declarada, per això mostra l'error semàntic.
Exemple 2: Incompatibilitat de tipus:
int a = 'hello'; // the types String and int are not compatible
Exemple 3: Errors en les expressions:
String s = '...'; int a = 5 - s; // the - operator does not support arguments of type String