  I found that the release of BISON on FF#136 generated code that would
not compile under MANX Aztec C. In addition, I did not have room in my
S: directory for the bison.(simple|hairy) files.

The changes I made to the program are:

  1) in output.c, I modified the printf() statements so that instead of:

	#ifndef __STDC__
	#define const
	#endif

     it would print:

	#ifdef __STDC__
	#define CONST const
	#else
	#define CONST
	#endif

     and replaced all occurences of (eg):

	fprintf(ftable, "\nstatic const char yytranslate[] = {     0");

     with

	fprintf(ftable, "\nstatic CONST char yytranslate[] = {     0");

  2) in several places, notably output.c and bison.simple, I made some
     additional function declarations casting of variables to quiet the
     Aztec compiler so that I could use the 16-bit integer model. The
     following is an example from output.c, old:

	fprintf(ftable, "#define\tYYFLAG\t\t%d\n", MINSHORT);

     vs new:

	fprintf(ftable, "#define\tYYFLAG\t\t%ld\n", (long)MINSHORT);

     and this is the changes for bison.simple (as diff output):

	152a153
	> extern void *alloca();
	243,247c244,248
	<       yyss = (short *) alloca (yymaxdepth * sizeof (*yyssp));
	<       bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
	<       yyls = (YYLTYPE *) alloca (yymaxdepth * sizeof (*yylsp));
	<       bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
	<       yyvs = (YYSTYPE *) alloca (yymaxdepth * sizeof (*yyvsp));
	---
	>       yyss = (short *) alloca ((unsigned)yymaxdepth * sizeof (*yyssp));
	>       bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
	>       yyls = (YYLTYPE *) alloca ((unsigned)yymaxdepth * sizeof (*yylsp));
	>       bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
	>       yyvs = (YYSTYPE *) alloca ((unsigned)yymaxdepth * sizeof (*yyvsp));

  3) I had to add the missing functions from the Aztec library to GNU.LIB.
     This is in a separate directory, and contains functions used by both
     BISON and FLEX

  4) I changed the default location for the bison.(simple|hairy) to :lib/ ,
     this is settable in the makefile, and can be over-ridden by the
     environment variables BISON_SIMPLE and BISON_HAIRY.
     I also created a Makefile for Aztec C from the supplied makefile.unix.


I tested BISON by using it to generate FLEX 

	Scott Henry
	302 Easy st, apt 31
	Mountain View, CA  94043

	scott_henry@cup.portal.com
