Sponsored Content
Top Forums Programming Multiple scanners on same input file using lex/flex Post 302094205 by Rakesh Ranjan on Thursday 26th of October 2006 02:41:28 AM
Old 10-26-2006
No Corona688, that wont work because -Pprefix just #define's the original function (like -Pfirst would do '#define yylex firstlex') which would be expanded by preprocessor before compilation itself so while compiling the complier will complain that the function (yylex) has been redefined (because now there are 4 scanner functions from our 4 files expanded to yylex). And in fact not just yylex there are many other supporting functions and global variables that are #define'd this way & get expanded before compilation genrating a lot of errors.
Now can someone tell me way out?
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Can Xargs execute multiple commands of evry input file

Hello , I am trying to print the footer of evry file in the given directory with xargs command like follows ls -1 | xargs -I {} gzcat {} | tail -1 now problem with this is only last file foooter is getting printed as " | tail -1 " is getting executed for the last file. I know this can... (4 Replies)
Discussion started by: nilesrex
4 Replies

2. Shell Programming and Scripting

isql input file with multiple sql statements

I've got: isql -U $USERID -S $SERVER -D $DATABASE -i inputfile.sql -o outputfile.txt in inputfile I have: go sql#1 go sql#2 go sql#3 go I also tried without "go" and with";" instead which did not work SQL statements will work if I paste them directly into the script and use EOF ... (0 Replies)
Discussion started by: Cailet
0 Replies

3. Shell Programming and Scripting

building output file from multiple input files

Hi there, I am trying to figure out a way to combine multiple sources with different data on a single file, and I am trying to find the best way to do it. I have multiple files, let's say A, B, C and D. A has a field in common with B, B has a field in common with C, and C has a field in... (2 Replies)
Discussion started by: ppucci
2 Replies

4. Shell Programming and Scripting

Split a file into multiple files based on the input pattern

I have a file with lines something like. ...... 123_start ...... ....... 123_end .... ..... 456_start ...... ..... 456_end .... ..... 789_start .... .... 789_end (6 Replies)
Discussion started by: abinash
6 Replies

5. Shell Programming and Scripting

How to ftp multiple files by taking the file name from a input file.

Hi, I'm working on a script which has to copy multiple files from one server to another server. The list of files that are to be copied is present in a file say input.txt. vi input.txt abc.c welcome.c new.c welcome1.c for ftp'ing a single file say 'new.c' the following code... (2 Replies)
Discussion started by: i.srini89
2 Replies

6. Homework & Coursework Questions

Lex: analyzing a C file and printing out identifiers and line numbers they're found on

Florida State University, Tallahassee, FL USA, Dr. Whalley, COP4342 1. The problem statement, all variables and given/known data: Create a lex specification file that reads a C source program that ignores keywords and collects all identifiers (regular variable names) and also displays the line... (3 Replies)
Discussion started by: D2K
3 Replies

7. Shell Programming and Scripting

Multiple file input

Once a time, I did see a way to multiply a file input in bash, but have forgotten how it was done. Eks. awk 'FNR==NR {a++;next} ($2 in a) {print $2}' file file Here you need file two times. I seen it some like this awk 'FNR==NR {a++;next} ($2 in a) {print $2}' 2&file (16 Replies)
Discussion started by: Jotne
16 Replies

8. Shell Programming and Scripting

Copying a file to multiple other files using a text file as input

Hello, I have a file called COMPLIST as follows that contains 4 digit numbers.0002 0003 0010 0013 0015 0016 0022 0023 0024 0025 0027 0030 0031 0032 0033 0035 0038 0041 (3 Replies)
Discussion started by: sph90457
3 Replies

9. Shell Programming and Scripting

Avoid overwriting backup file when multiple entries need to replace in one file input from another

Hello, I have been working on script in which search and replace the multiple pattern. 1. update_params.sh read the multiple pattern from input file ParamMapping.txt(old_entry|New_entry) and passing this values one by one to change_text.sh 2. change_text.sh read... (0 Replies)
Discussion started by: ketanraut
0 Replies

10. Shell Programming and Scripting

Removing multiple lines from input file, if multiple lines match a pattern.

GM, I have an issue at work, which requires a simple solution. But, after multiple attempts, I have not been able to hit on the code needed. I am assuming that sed, awk or even perl could do what I need. I have an application that adds extra blank page feeds, for multiple reports, when... (7 Replies)
Discussion started by: jxfish2
7 Replies
YACC(1) 						      General Commands Manual							   YACC(1)

NAME
yacc - yet another compiler-compiler SYNOPSIS
yacc [ option ... ] grammar DESCRIPTION
Yacc converts a context-free grammar and translation code into a set of tables for an LR(1) parser and translator. The grammar may be ambiguous; specified precedence rules are used to break ambiguities. The output file, y.tab.c, must be compiled by the C compiler to produce a program This program must be loaded with a lexical analyzer func- tion, yylex(void) (often generated by lex(1)), with a main(int argc, char *argv[]) program, and with an error handling routine, yyer- ror(char*). The options are -o output Direct output to the specified file instead of y.tab.c. -Dn Create file y.debug, containing diagnostic messages. To incorporate them in the parser, compile it with preprocessor symbol yydebug defined. The amount of diagnostic output from the parser is regulated by value n. The value 0 reports errors; 1 reports reductions; higher values (up to 4) include more information about state transitions. -v Create file y.output, containing a description of the parsing tables and of conflicts arising from ambiguities in the grammar. -d Create file y.tab.h, containing #define statements that associate yacc-assigned `token codes' with user-declared `token names'. Include it in source files other than y.tab.c to give access to the token codes. -s stem Change the prefix of the file names y.tab.c, y.tab.h, y.debug, and y.output to stem. -S Write a parser that uses Stdio instead of the print routines in libc. The specification of yacc itself is essentially the same as the UNIX version described in the references mentioned below. Besides the -D option, the main relevant differences are: The interface to the C environment is by default through <libc.h> rather than <stdio.h>; the -S option reverses this. The parser accepts UTF input text (see utf(6)), which has a couple of effects. First, the return value of yylex() no longer fits in a short; second, the starting value for non-terminals is now 0xE000 rather than 257. The generated parser can be recursive: actions can call yyparse, for example to implement a sort of #include statement in an inter- preter. Finally, some undocumented inner workings of the parser have been changed, which may affect programs that know too much about its structure. FILES
y.output y.tab.c y.tab.h y.debug y.tmp.* temporary file y.acts.* temporary file /sys/lib/yaccpar parser prototype /sys/lib/yaccpars parser prototype using stdio SOURCE
/sys/src/cmd/yacc.c SEE ALSO
lex(1) S. C. Johnson and R. Sethi, ``Yacc: A parser generator'', Unix Research System Programmer's Manual, Tenth Edition, Volume 2 B. W. Kernighan and Rob Pike, The UNIX Programming Environment, Prentice Hall, 1984 BUGS
The parser may not have full information when it writes to y.debug so that the names of the tokens returned by may be missing. YACC(1)
All times are GMT -4. The time now is 08:34 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy