Related articles |
---|
berkeley yacc on DOS lhhuang@jeeves.waterloo.edu (1992-07-11) |
Re: berkeley yacc on DOS epang@sfu.ca (1992-07-13) |
berkeley yacc on DOS wolff@alpha.ces.cwru.edu (Francis Wolff) (1992-07-13) |
Byacc for DOS kbriggs@mundoe.maths.mu.OZ.AU (1992-07-14) |
Re: berkeley yacc on DOS tom@smart.bo.open.de (1992-07-14) |
berkeley yacc on DOS jar@cheops.HQ.Ileaf.COM (1992-07-20) |
Re: berkeley yacc on DOS moss@cs.umass.edu (1992-07-21) |
Newsgroups: | comp.compilers |
From: | lhhuang@jeeves.waterloo.edu (Larry Huang) |
Organization: | University of Waterloo |
Date: | Sat, 11 Jul 1992 18:12:38 GMT |
Keywords: | yacc, MSDOS, question |
I tried sending this question to Bob Corbett at corbett@berkeley.edu but
the mail bounced. So I am posting it here.
I have ftp'ed Berkeley Yacc and compiled it on an Ultrix machine and it
works fine (using a C grammar by Jim Roskind). I then converted the C
source to ANSI C and it also worked fine. Each time Byacc generated the
parser in less than 1/2 minute.
Later I downloaded the ANSI C code to my 286 MSDOS box and compiled it
under Quick C, Turbo C++ (in C mode), and Mix Power C. They all compiled
without problem but when I test it using the C grammar the machine seemed
to lock up (I let it run for about 3 hours and when it didn't stop I
rebooted the machine).
I inserted some debugging code into the main() function and found that the
function reader() is the culprit. Could it be that the 16-bit intergers
(unsigned's) on DOS are causing the problems? If so, how can I solve the
problem? would the SETBIT and BIT macroes in the header file "defs.h" need
to be adjusted?
Any knows what the problem(s) is (are) ? Thanx in advance.
Larry Huang @ UW
[A quick look at the code shows that the definitions of SETBIT() and BIT()
assume that an unsigned int is 32 bits. That's easy enough to fix, but the
real question is whether anyone has already ported Berkeley yacc to MS-DOS,
since there are most likely other portability problems. -John]
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.