Re: [INTERFACES] ecpg: use of #defines

From: Michael Meskes <Michael_Meskes(at)topmail(dot)de>
To: pgsql-interfaces(at)postgreSQL(dot)org
Subject: Re: [INTERFACES] ecpg: use of #defines
Date: 1999-02-20 16:52:58
Message-ID: 19990220175258.A687@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

On Sat, Feb 20, 1999 at 10:22:09AM -0600, James Thompson wrote:
> In my exec sql begin declare section i have items like
>
> char uid_result[31];
>
> which I tried to replace last night with
> char uid_result[UID_LEN];
>
> and I placed #define UID_LEN 31 in a .h file

#define is only parsed by cpp not by ecpg.

> I changed my #include with a exec sql include to include the .h file
>
> The parser didn't like the char uid_result[UID_LEN] line
>
> I'm pretty sure I understand the mechanics of this, cpp hasn't run and
> UID_LEN is an invalid value.

Try 'exec sql define UID_LEN 31;'

> Is there a workaround? Other than hard coding the 31

No need to work around this as the functionality is already there. Please
see test1.pgc for an example. Yes, I know I should document all this. :-)

Note, that using the exec sql define command is sufficient. You do not need
a #define anymore since ecpg will make the replacement.

Michael
--
Michael Meskes | Go SF 49ers!
Th.-Heuss-Str. 61, D-41812 Erkelenz | Go Rhein Fire!
Tel.: (+49) 2431/72651 | Use Debian GNU/Linux!
Email: Michael(dot)Meskes(at)gmx(dot)net | Use PostgreSQL!

In response to

Browse pgsql-interfaces by date

  From Date Subject
Next Message Michael Meskes 1999-02-20 18:07:34 ecpg idea
Previous Message James Thompson 1999-02-20 16:22:09 ecpg: use of #defines