<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.0.4630.0">
<TITLE>Solaris Compile Error</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->
<P><FONT SIZE=2 FACE="Courier New"> This is my first post to this list, so if I'm doing something incorrectly, please let me know. I didn't know where else to report problems. I have obtained a copy of the DGD source and patched it up to 1.2.93. When I try to compile it, I get:</FONT></P>
<P><FONT SIZE=2 FACE="Courier New">gcc -I. -Icomp -Ilex -Ied -Iparser -Ikfun -DSOLARIS -g -DDEBUG -c -o config.o config.c</FONT>
<BR><FONT SIZE=2 FACE="Courier New">In file included from config.c:18:</FONT>
<BR><FONT SIZE=2 FACE="Courier New">comp/parser.h:62: warning: data definition has no type or storage class</FONT>
<BR><FONT SIZE=2 FACE="Courier New">comp/parser.h:63: error: parse error before "yylval"</FONT>
<BR><FONT SIZE=2 FACE="Courier New">comp/parser.h:63: warning: data definition has no type or storage class</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c: In function `conf_config':</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:750: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:751: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:758: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:764: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:769: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:859: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:859: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">config.c:863: error: request for member `number' in something not a structure or union</FONT>
<BR><FONT SIZE=2 FACE="Courier New">make: *** [config.o] Error 1</FONT>
</P>
<P><FONT SIZE=2 FACE="Courier New"> 1.2.92 compiles just fine. Here's some additional information:</FONT>
</P>
<P><FONT SIZE=2 FACE="Courier New"> Solaris 9 08/03 (Patched Up)</FONT>
<BR><FONT SIZE=2 FACE="Courier New"> gcc 3.4.0</FONT>
<BR><FONT SIZE=2 FACE="Courier New"> byacc (Can't remember which version, but it's not the OS provided yacc)</FONT>
</P>
<P><FONT SIZE=2 FACE="Courier New"> I don't have much experience playing with yacc, but I did notice that something was changed in comp/parser.y in the 1.2.92-1.2.93 patch. This *may* have done something that causes the compile to fail on Solaris. I manually copied comp/parser.h from 1.2.92 into the 1.2.93 source tree and everything *appears* to be working. Here is a diff between the two generated comp/parser.h files...</FONT></P>
<P><FONT SIZE=2 FACE="Courier New">% diff dgd-1.2.93/src/comp/parser.h dgd-1.2.92/src/comp/parser.h 62c62,67 < YYSTYPE;</FONT>
<BR><FONT SIZE=2 FACE="Courier New">---</FONT>
<BR><FONT SIZE=2 FACE="Courier New">> typedef union {</FONT>
<BR><FONT SIZE=2 FACE="Courier New">> Int number; /* lex input */</FONT>
<BR><FONT SIZE=2 FACE="Courier New">> xfloat real; /* lex input */</FONT>
<BR><FONT SIZE=2 FACE="Courier New">> unsigned short type; /* internal */</FONT>
<BR><FONT SIZE=2 FACE="Courier New">> struct _node_ *node; /* internal */</FONT>
<BR><FONT SIZE=2 FACE="Courier New">> } YYSTYPE;</FONT>
</P>
<P><FONT SIZE=2 FACE="Courier New"> Like I said, by manually copying the parser.h from 1.2.92, I got 1.2.93 to compile, and it is running, but I really don't want to have to do this with each new rev. I'll try to provide more information if requested and/or necessary.</FONT></P>
<P><FONT SIZE=2 FACE="Courier New"> Thanks a million,</FONT>
</P>
<P><FONT SIZE=2 FACE="Courier New">Jeromy</FONT>
<BR><FONT SIZE=2 FACE="Courier New"> </FONT>
</P>
</BODY>
</HTML>