Re: ECGP - varchar in struct? - Mailing list pgsql-interfaces

From Michael Meskes
Subject Re: ECGP - varchar in struct?
Date
Msg-id 20020811135851.GE3797@feivel.fam-meskes.de
Whole thread Raw
In response to ECGP - varchar in struct?  ("William West" <wwest@csc.com>)
List pgsql-interfaces
On Fri, Jul 26, 2002 at 09:38:25PM -0400, William West wrote:
> It would appear that ecpg will only re-write a
> varchar if it is found in a DECLARE statement,
> because the varchar gets past the ecpg preprocessor's
> INCLUDE as-is ... and, of course, the real C compiler
> does not know what a 'varchar' is, so it complains.

Yes, ecpg only parses stuff inside the declare section. A full syntax
checking mode would be a nice add-on (and is listed as todo) but IMO it
is not really needed urgently.

> As a PostgreSQL 'newbie', I am not sure if it is more
> work to fix ecpg or to re-write how the application
> does things. I see it is a 'yacc' unit that handles the
> re-writing that ecpg now does, but I do not know
> 'yacc-ese' and do not know what else would be involved
> to fix ecpg to work like PRO-C?

Yes, it's quite some work. :-) But if you volunteer I gladly accept
patches. :-)

> - Did I miss something here?

Yes, at first you can list you struct definition inside the declare
section and it will work nicely.

And second you can use a typedef command that AFAIK Pro*C does not have.

This should help you without much work.

>   varchar re-writes during INCLUDE and not
>   just during DECLARE?

Actually it does not have anything to do with INCLUDE or I misunderstood
your problem comletely.

Hope this helps.

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


pgsql-interfaces by date:

Previous
From: g.hintermayer@mail.inode.at
Date:
Subject: libpgtcl modifications
Next
From: "William West"
Date:
Subject: Re: ECGP - varchar in struct?