On Mon, 2 Oct 2006, Tom Lane wrote: > Jeremy Drake <[EMAIL PROTECTED]> writes: > >> I grabbed flex and bison from GNUwin32 > >> (http://gnuwin32.sourceforge.net/packages/bison.htm) > > > This appears to not work out well. If I copy the generated files from > > bison from a linux box, then they are ok, but if I try to use ones > > generated using that version of bison, it does not compile. > > Hm, have you tried diff'ing the output files from the two cases? This > is really probably a question for the flex and bison maintainers, not > us, but it seems like it should work for moderately up-to-date versions > of those tools. What compile failures do you get exactly?
I was just going to chalk it up to a bad matching of tool ports or something and try to find a different bison, but if you are really interested... I get errors on any bison generated file. For simplicity of the diff, I did not use the first failure I got, which was gram.c, but instead used the much smaller bootparse.c file. I grabbed the bootparse.c files generated on windows and on linux, did a diff -cw between them, and tarred up the three files, which you can get from http://www.jdrake.com/postgresql/bison-files-win32.tar.gz The errors I got on this file were: 1>------ Build started: Project: postgres, Configuration: Release Win32 ------ 1>Compiling... 1>bootparse.c 1>bootparse.tab.c(1065) : error C2449: found '{' at file scope (missing function header?) 1>bootparse.tab.c(1858) : error C2059: syntax error : '}' and then a whole lot of random, uninteresting errors of the kind you get when the compiler is so confused it no longer knows what it is doing. I am currently trying to build a newer version of bison using mingw and use it, but I am running into issues with that also. Oh, I just got the email from Magnus which says do not use v2.1, but 1.875, so I guess that's what I did wrong. Oops! > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match > > -- Drive defensively. Buy a tank. ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match