pgsql/src/interfaces/ecpg ChangeLog lib/execut ...

Started by Michael Meskesabout 24 years ago6 messagescomitters
Jump to latest
#1Michael Meskes
meskes@postgresql.org

CVSROOT: /cvsroot
Module name: pgsql
Changes by: meskes@postgresql.org 02/07/20 04:24:19

Modified files:
src/interfaces/ecpg: ChangeLog
src/interfaces/ecpg/lib: execute.c
src/interfaces/ecpg/preproc: keywords.c pgc.l preproc.y

Log message:
Synced parser yet again.

Michael

#2Neil Conway
neilc@samurai.com
In reply to: Michael Meskes (#1)
Re: pgsql/src/interfaces/ecpg ChangeLog lib/execut ...

On Sat, Jul 20, 2002 at 04:24:19AM -0400, Michael Meskes wrote:

CVSROOT: /cvsroot
Module name: pgsql
Changes by: meskes@postgresql.org 02/07/20 04:24:19

Modified files:
src/interfaces/ecpg: ChangeLog
src/interfaces/ecpg/lib: execute.c
src/interfaces/ecpg/preproc: keywords.c pgc.l preproc.y

Log message:
Synced parser yet again.

I get this with CVS HEAD, bison 1.35:

make[4]: Entering directory
`/home/nconway/pgsql/src/interfaces/ecpg/preproc'
bison -y -d preproc.y
19 rules never reduced
preproc.y contains 7 useless nonterminals and 19 useless rules

Cheers,

Neil

--
Neil Conway <neilconway@rogers.com>
PGP Key ID: DB3C29FC

#3Michael Meskes
meskes@postgresql.org
In reply to: Neil Conway (#2)
Re: pgsql/src/interfaces/ecpg ChangeLog lib/execut ...

On Sat, Jul 20, 2002 at 01:30:57PM -0400, Neil Conway wrote:

I get this with CVS HEAD, bison 1.35:

make[4]: Entering directory
`/home/nconway/pgsql/src/interfaces/ecpg/preproc'
bison -y -d preproc.y
19 rules never reduced
preproc.y contains 7 useless nonterminals and 19 useless rules

Frankly I am at a loss here. This happened because I committed something
from my ecpg_big_bison branch. But it went into HEAD again. The tags
simply were lost on my directory. I have no clue at all how this could
happen.

BTW the actual preproc.y file does compile fine with bison 1.49, but
then ecpg gives me syntax errors where none should be. After removing some 30k
of rules from the bison file ecpg works as it should. Maybe this is just
another bison bug.

Michael
--
Michael Meskes
Michael@Fam-Meskes.De
Go SF 49ers! Go Rhein Fire!
Use Debian GNU/Linux! Use PostgreSQL!

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Michael Meskes (#3)
Re: pgsql/src/interfaces/ecpg ChangeLog lib/execut ...

Michael Meskes <meskes@postgresql.org> writes:

BTW the actual preproc.y file does compile fine with bison 1.49, but
then ecpg gives me syntax errors where none should be. After removing some 30k
of rules from the bison file ecpg works as it should. Maybe this is just
another bison bug.

Scary. Have you mentioned it to the bison people? They might like to
use ecpg as a test case ...

regards, tom lane

#5Michael Meskes
meskes@postgresql.org
In reply to: Tom Lane (#4)
Re: pgsql/src/interfaces/ecpg ChangeLog lib/execut ...

On Sun, Jul 21, 2002 at 09:48:36AM -0400, Tom Lane wrote:

Michael Meskes <meskes@postgresql.org> writes:

BTW the actual preproc.y file does compile fine with bison 1.49, but
then ecpg gives me syntax errors where none should be. After removing some 30k
of rules from the bison file ecpg works as it should. Maybe this is just
another bison bug.

Scary. Have you mentioned it to the bison people? They might like to
use ecpg as a test case ...

I did mail them as soon as I found out and offered my sources as test
case. No reply yet, but then it's weekend. :-)

Michael
--
Michael Meskes
Michael@Fam-Meskes.De
Go SF 49ers! Go Rhein Fire!
Use Debian GNU/Linux! Use PostgreSQL!

#6Thomas Lockhart
lockhart@fourpalms.org
In reply to: Michael Meskes (#1)
Re: pgsql/src/interfaces/ecpg ChangeLog lib/execut ...

Frankly I am at a loss here. This happened because I committed something
from my ecpg_big_bison branch. But it went into HEAD again. The tags
simply were lost on my directory. I have no clue at all how this could
happen.

Are you using remote cvs? Perhaps you created the branch (hmm, no I did
that didn't I)? If you had created the branch remotely, then I would
have guessed that after creating the branch you didn't move your tree
*to* the branch using

cvs update -r ecpg_big_bison src/interfaces/ecpg

The symptom is that you have checked out something on the main branch,
or created a tag but did not move your tree to the branch. Or moved your
tree back to the main branch accidentally, before committing.

Try

cvs update -r ecpg_big_bison src/interfaces/ecpg

Ah, perhaps you are updating the rest of the tree using

cvs update -A pgsql

The -A flag forces the code to the main branch, so stay away from it. If
something was checked out on a branch (yours or the main one) it will
stay there unless cvs is directed to change that. So once you've got
your checked-out tree the way you want (mostly on the main branch,
src/interfaces/ecpg on ecpg_big_bison) then say away from "-r" and "-A"
and things should stay the way you want.

You can verify the status of your file(s) *before* committing them by
doing a

cvs status <filename>

hth

- Thomas