Acciones semánticas de un analizador sintáctico
El Analizador Semántico finaliza la fase de Análisis del compilador y comienza la fase de Síntesis, en la cual se comienza a generar el código objeto.
La especificación de la semántica puede realizarse de dos formas:
-
Lenguaje natural
-
Especificación formal: Semántica Operacional, semántica denotacional, semántica Axiomática, Gramáticas con Atributos.
ACCIONES SEMÁNTICAS
Dependiendo del tipo de sentencias, las acciones semánticas pueden agruparse en:
Sentencias de Declaración: Completar la sección de tipos de la Tabla de
Símbolos.
Sentencias “ejecutables”: Realizar comprobaciones de tipos entre los operandos implicados.
Funciones y procedimientos: Comprobar el número, orden y tipo de los parámetros actuales en cada llamada a una función o procedimiento.
Identificación de variables: Comprobar si un identificador ha sido declarado antes de utilizarlo.
Etiquetas: Comprobar si hay etiquetas repetidas y validación.
Constantes: Comprobar que no se utilicen en la parte izquierda de una asignación.
Conversiones y equivalencias de tipo: Verificación.
Sobrecarga de operadores y funciones: Detectar y solventar.