IngleseFranceseSpagnolo

Esegui server | Ubuntu > | Fedora > |


Favicon di OnWorks

yaccplan9 - Online nel cloud

Esegui yaccplan9 nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando yaccplan9 che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici postazioni di lavoro online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


yacc - ancora un altro compilatore-compilatore

SINOSSI


yacc [ opzione ... ] grammatica

DESCRIZIONE


Yacc converte una grammatica e un codice di traduzione senza contesto in un insieme di tabelle per
LR(1) parser e traduttore. La grammatica può essere ambigua; le regole di precedenza specificate sono
usato per rompere le ambiguità.

Il file di output, y.tab.c, deve essere compilato dal compilatore C per produrre un programma Questo
programma deve essere caricato con una funzione di analizzatore lessicale, yylex (vuoto) (spesso generato da
lex(1)), con a principale(int argc, serbatoio *argv[]) programma e con una routine di gestione degli errori,
errore(carattere*).

Le opzioni sono

-o produzione Output diretto al file specificato invece di y.tab.c.

-Dn Crea file y.debug, contenente messaggi di diagnostica. Per incorporarli in
il parser, compilalo con il simbolo del preprocessore yydebug definito. La quantità di
l'uscita diagnostica dal parser è regolata dal valore n. Il valore 0 riporta
errori; 1 riporta riduzioni; valori più alti (fino a 4) includono più informazioni
sulle transizioni di stato.

-v Crea file y.uscita, contenente una descrizione delle tabelle di parsing e di
conflitti derivanti da ambiguità nella grammatica.

-d Crea file y.tab.h, contenente #define affermazioni che associano yacc-assegnato
"codici token" con "nomi token" dichiarati dall'utente. Includilo nei file sorgente
diverso y.tab.c per dare accesso ai codici token.

-s stelo Cambia il prefisso dei nomi dei file y.tab.c, y.tab.h, y.debuge y.uscita a
stelo.

-S Scrivi un parser che usi Stdio invece di stampare routine in libc.

-l Disabilita le direttive #line nel parser generato.

-a Genera un parser che accetta un argomento di tipo Yyarg e passa questo argomento
ad ogni invocazione della funzione lexer, yylex. Yyarg contiene per istanza
state e un singolo membro visibile dall'utente, arg, di tipo void*.

La specifica di yacc stesso è essenzialmente lo stesso della versione UNIX descritta in
i riferimenti di seguito indicati. oltre al -D opzione, le principali differenze rilevanti sono:

L'interfaccia per l'ambiente C è per impostazione predefinita tramite anziché
; il -S opzione inverte questo.

Il parser accetta il testo di input UTF (vedi utf(7)), che ha un paio di effetti.
Innanzitutto, il valore restituito di yylex() non si adatta più a corto; secondo, l'inizio
il valore per i non terminali ora è 0xE000 anziché 257.

Il parser generato può essere ricorsivo: le azioni possono chiamare yyparse, ad esempio a
attuare una sorta di #includere dichiarazione in un interprete.

Infine, sono stati modificati alcuni meccanismi interni non documentati del parser, il che
può influenzare i programmi che conoscono troppo la sua struttura.

Usa yaccplan9 online utilizzando i servizi onworks.net


Ad


Ad