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.Meskes@gmx.net | Use PostgreSQL!