yaccplan9 - Online en la nube

Este es el comando yaccplan9 que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


yacc - otro compilador-compilador

SINOPSIS


yacc [ opción ... ] gramática

DESCRIPCIÓN


Yacc convierte un código de traducción y gramática libre de contexto en un conjunto de tablas para una
LR(1) analizador y traductor. La gramática puede ser ambigua; las reglas de precedencia especificadas son
utilizado para romper ambigüedades.

El archivo de salida, y.tab.c, debe ser compilado por el compilador de C para producir un programa.
El programa debe cargarse con una función de analizador léxico, yylex (vacío) (a menudo generado por
lex(1)), con un principal (int argc, tanque * argv []) programa, y ​​con una rutina de manejo de errores,
yyerror (char *).

Las opciones son

-o salida Salida directa al archivo especificado en lugar de y.tab.c.

-Dn Crea un archivo y.depurar, que contiene mensajes de diagnóstico. Para incorporarlos en
el analizador, compílelo con el símbolo del preprocesador yydebug definido. La cantidad de
la salida de diagnóstico del analizador sintáctico está regulada por valor n. El valor 0 informa
errores; 1 informa reducciones; los valores más altos (hasta 4) incluyen más información
sobre las transiciones de estado.

-v Crea un archivo y.salida, que contiene una descripción de las tablas de análisis y de
conflictos derivados de ambigüedades en la gramática.

-d Crea un archivo y.tab.h, espacio que contiene #definir declaraciones que asocian yacc-asignado
'códigos de token' con 'nombres de token' declarados por el usuario. Incluirlo en archivos fuente
que no sea y.tab.c para dar acceso a los códigos de token.

-s tallo Cambiar el prefijo de los nombres de los archivos y.tab.c, y.tab.h, y.depurary y.salida a
tallo.

-S Escriba un analizador que utilice Stdio en lugar del Imprimir rutinas en libc.

-l Deshabilite las directivas #line en el analizador generado.

-a Genere un analizador que tome un argumento de tipo Yyarg y pase este argumento
a cada invocación de la función lexer, yylex. Yyarg contiene por instancia
state y un único miembro visible para el usuario, arg, de tipo void *.

La especificación de los yacc en sí es esencialmente la misma que la versión UNIX descrita en
las referencias mencionadas a continuación. junto al -D opción, las principales diferencias relevantes son:

La interfaz para el entorno C es por defecto a través de más bien que
; El -S La opción invierte esto.

El analizador acepta texto de entrada UTF (consulte utf(7)), que tiene un par de efectos.
Primero, el valor de retorno de yylex () ya no cabe en un Corto; segundo, el comienzo
El valor para no terminales es ahora 0xE000 en lugar de 257.

El analizador generado puede ser recursivo: las acciones pueden llamar analizar, por ejemplo para
implementar una especie de #incluir declaración en un intérprete.

Finalmente, se han cambiado algunos trabajos internos indocumentados del analizador, que
puede afectar a programas que conocen demasiado sobre su estructura.

Use yaccplan9 en línea usando los servicios de onworks.net



Últimos programas en línea de Linux y Windows