Message-ID: <87BC54A997CCD01198930020AFF6011C040F43@IS~RKKPRGOP02> From: "Holejsovsky, Pavel" To: Tron Thomas Cc: djgpp AT delorie DOT com Subject: RE: Can't get YACC parser to run Date: Fri, 6 Jun 1997 04:17:37 +0200 MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk Assigning some valid descriptor to yyin will help. For example: yyin = stdin; for reading from standard input or if ((yyin = fopen("infile", "r")) == NULL) return -1; for reading from the file "infile". > -----Original Message----- > From: Tron Thomas [SMTP:tron DOT thomas AT sierra DOT com] > Sent: Thursday, June 05, 1997 8:07 PM > To: djgpp AT delorie DOT com > Subject: Can't get YACC parser to run > > I reading the book "Lex and Yacc" by John R. Levine, Tonay Mason, and > Doug Brown. I am using Flex version 2.5.3 and Bison version 1.25 for > MS-DOS to run their examples, and I'm compiling the programs using > Visual C++ 4.2 on Windows '95. > > I created the program in example 1-7 (a Yacc Parser) of chapter one, > but > I'm not sure how I'm supposed to run it. When I just try to launch > it, > the program crashes. This is because the main function in the file > ch1-05.y is defined as follows: > > extern FILE *yyin; > > main( ) > { > while(!feof(yyin)){ > yyparse( ); > } > } > > When I trace through this code yyin = 0 causing the program to crash > on > the call to feof. > > Can somebody tell me what I need to do to get this program to run?