Thread: CVS Head parser error?
I got following with CVS Head parser. I'm using bison 2.1 and flex 2.5.35. Am I missing something? make[3]: Entering directory `/usr/local/src/pgsql/current/pgsql/src/backend/parser' gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -fno-strict-aliasing -I. -I../../../src/include -D_GNU_SOURCE -c -o gram.o gram.c In file included from gram.y:11211: scan.c:14473: error: conflicting types for `base_yylex' ../../../src/include/parser/gramparse.h:122: error: previous declaration of `base_yylex' scan.l: In function `base_yylex': scan.l:354: error: `yylloc' undeclared (first use in this function) scan.l:354: error: (Each undeclared identifier is reported only once scan.l:354: error: for each function it appears in.) scan.l:386: warning: implicit declaration of function `yyerror' scan.l:404: error: `yylval' undeclared (first use in this function) scan.l:448: error: too few arguments to function `ScanKeywordLookup' scan.l:474: error: too few arguments to function `scanner_errposition' scan.l:522: error: too few arguments to function `scanner_errposition' scan.l:823: error: too few arguments to function `ScanKeywordLookup' scan.l: At top level: scan.l:864: error: conflicting types for `scanner_errposition' ../../../src/include/parser/gramparse.h:123: error: previous declaration of `scanner_errposition' scan.l:889: warning: no previous prototype for `yyerror' scan.l:889: warning: type mismatch with previous implicit declaration scan.l:748: warning: previous implicit declaration of `yyerror' scan.l:889: warning: `yyerror' was previously implicitly declared to return `int' scan.l: In function `yyerror': scan.l:890: error: `yylloc' undeclared (first use in this function) scan.l: At top level: scan.l:916: error: conflicting types for `scanner_init' ../../../src/include/parser/gramparse.h:119: error: previous declaration of `scanner_init' scan.l:947: error: conflicting types for `scanner_finish' ../../../src/include/parser/gramparse.h:120: error: previous declaration of `scanner_finish' scan.l: In function `check_unicode_value': scan.l:1024: error: `yylloc' undeclared (first use in this function) scan.l: In function `litbuf_udeescape': scan.l:1041: error: `yylloc' undeclared (first use in this function) scan.l: In function `check_string_escape_warning': scan.l:1132: error: `yylloc' undeclared (first use in this function) scan.l: In function `check_escape_warning': scan.l:1157: error: `yylloc' undeclared (first use in this function) make[3]: *** [gram.o] Error 1
Sorry for noise. I regenerated scan.c and gram.c and now everything works fine. -- Tatsuo Ishii SRA OSS, Inc. Japan > I got following with CVS Head parser. I'm using bison 2.1 and flex > 2.5.35. Am I missing something? > > make[3]: Entering directory `/usr/local/src/pgsql/current/pgsql/src/backend/parser' > gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -fno-strict-aliasing -I. -I../../../src/include -D_GNU_SOURCE -c -o gram.o gram.c > In file included from gram.y:11211: > scan.c:14473: error: conflicting types for `base_yylex' > ../../../src/include/parser/gramparse.h:122: error: previous declaration of `base_yylex' > scan.l: In function `base_yylex': > scan.l:354: error: `yylloc' undeclared (first use in this function) > scan.l:354: error: (Each undeclared identifier is reported only once > scan.l:354: error: for each function it appears in.) > scan.l:386: warning: implicit declaration of function `yyerror' > scan.l:404: error: `yylval' undeclared (first use in this function) > scan.l:448: error: too few arguments to function `ScanKeywordLookup' > scan.l:474: error: too few arguments to function `scanner_errposition' > scan.l:522: error: too few arguments to function `scanner_errposition' > scan.l:823: error: too few arguments to function `ScanKeywordLookup' > scan.l: At top level: > scan.l:864: error: conflicting types for `scanner_errposition' > ../../../src/include/parser/gramparse.h:123: error: previous declaration of `scanner_errposition' > scan.l:889: warning: no previous prototype for `yyerror' > scan.l:889: warning: type mismatch with previous implicit declaration > scan.l:748: warning: previous implicit declaration of `yyerror' > scan.l:889: warning: `yyerror' was previously implicitly declared to return `int' > scan.l: In function `yyerror': > scan.l:890: error: `yylloc' undeclared (first use in this function) > scan.l: At top level: > scan.l:916: error: conflicting types for `scanner_init' > ../../../src/include/parser/gramparse.h:119: error: previous declaration of `scanner_init' > scan.l:947: error: conflicting types for `scanner_finish' > ../../../src/include/parser/gramparse.h:120: error: previous declaration of `scanner_finish' > scan.l: In function `check_unicode_value': > scan.l:1024: error: `yylloc' undeclared (first use in this function) > scan.l: In function `litbuf_udeescape': > scan.l:1041: error: `yylloc' undeclared (first use in this function) > scan.l: In function `check_string_escape_warning': > scan.l:1132: error: `yylloc' undeclared (first use in this function) > scan.l: In function `check_escape_warning': > scan.l:1157: error: `yylloc' undeclared (first use in this function) > make[3]: *** [gram.o] Error 1 > > -- > Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-hackers
Tatsuo Ishii <ishii@postgresql.org> writes: > I got following with CVS Head parser. I'm using bison 2.1 and flex > 2.5.35. Am I missing something? Hmm, are you sure that scan.c got remade? I didn't check in detail, but the errors look a bit like what would happen if the older scanner code got recompiled against current headers. I'd try "make maintainer-clean" and start over before investing additional thought. regards, tom lane