Skip site navigation (1) Skip section navigation (2)

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: (view raw, whole thread or download thread mbox)
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 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

pgsql-interfaces by date

Next:From: Michael MeskesDate: 1999-02-20 18:07:34
Subject: ecpg idea
Previous:From: James ThompsonDate: 1999-02-20 16:22:09
Subject: ecpg: use of #defines

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group