Resultados da pesquisa a pedido "flex-lexer"

1 a resposta

Bisonte com segurança / com reentrada + flex

Eu realmente preferiria um exemplo prático a qualquer explicação. Tudo o que eu li até agora no site de documentação de Bison contradiz o que o Flex diz. Diz-se declararyylex Como int yylex (yyscan_t yyscanner);outro quer que seja: int ...

1 a resposta

Turno Reduzir Conflito

Estou tendo problemas para corrigir uma mudança e reduzir conflitos na minha gramática. Tentei adicionar -v para ler a saída do problema e ele me orienta para o estado 0 e menciona que meu INT e FLOAT é reduzido a variáveis_definições pela regra ...

1 a resposta

Loop de Bison para conflito

para resolver o problema do dangling else, usei a seguinte solução: stmt : stmt_matched | stmt_unmatched ; stmt_unmatched : IF '(' exp ')' stmt | IF '(' exp ')' stmt_matched ELSE stmt_unmatched ; stmt_matched : IF '(' exp ')' stmt_matched ELSE ...

1 a resposta

flex / bison: como posso alternar dois lexers no mesmo arquivo de entrada

Como posso entregar um arquivo aberto, por exemplo ler por outro scanner para o próximo scanner - e entregá-lo ao analisador?

1 a resposta

goto label no mesmo loop no Bison

Estou fazendo um analisador com o Bison e o Flex e quero criar uma instrução "goto label", mas quero verificar se o rótulo existe no mesmo bloco de código (entre colchetes {}, loop, etc.). Existe uma função que verifica essas coisas?

2 a resposta

Problemas com o reentrante Flex e Bison

Estou aprendendo a usar o reentrante Bison e Flex juntos. Eu já tenho uma calculadora simples funcionando sem a capacidade de reentrada. No entanto, quando ativei o recurso de reentrada e fiz as modificações necessárias, não consegui fazer isso ...

1 a resposta

carregando arquivos externos flex bison - yyin?

Estou escrevendo uma linguagem básica no flex + bison para minha própria pesquisa pessoal / para executar scripts simples por diversão. Ele pega a entrada do usuário por meio da linha de comando, analisa e executa o resultado desejado. Eu ...

2 a resposta

como escapar da palavra-chave flex

Estou usando o Flex & bison no Linux. Eu tenho o seguinte configurado: // tokens CREATE {return token :: CREATE;} ESQUEMA {token de retorno :: SCHEMA; } RECORD {retornar token :: RECORD;} [_a-zA-Z0-9] [_a-zA-Z0-9] * {yylval-> strval = strdup ...

2 a resposta

Analisador - Falha na segmentação ao chamar o texto yy

Meu analisador está reconhecendo a gramática e indicando a linha de erro correta usando yylineno. Quero imprimir o símbolo que causou o erro. int yyerror(string s) { extern int yylineno; // defined and maintained in lex.yy.c extern char *yytext; ...

1 a resposta

Devo evitar "|" em padrões flexíveis?

Ouvi dizer que o "|" O operador diminui a correspondência de regex e certamente parece verdade no Perl, por exemplo. Preciso me preocupar com isso ao criar scanners com ferramentas como o gerador Flex lexer?