Re: BUG #1075: ecpg rejects C keywords in SQL context

Lists: pgsql-bugs
From: "PostgreSQL Bugs List" <pgsql-bugs(at)postgresql(dot)org>
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #1075: ecpg rejects C keywords in SQL context
Date: 2004-02-09 19:56:16
Message-ID: 20040209195616.C10ECCF48F7@www.postgresql.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs


The following bug has been logged online:

Bug reference: 1075
Logged by: Bob Showalter

Email address: bob_showalter(at)taylorwhite(dot)com

PostgreSQL version: 7.4

Operating system: FreeBSD 4.8

Description: ecpg rejects C keywords in SQL context

Details:

ecpg 3.1.0
PostgreSQL 7.4.1
FreeBSD 4.8 on i386
gcc version 2.95.4 20020320 [FreeBSD]

ecpg seems to erroneously treat C keywords as errors in a SQL context. I
discovered this after upgrading to 7.4 and compiling an existing program
that refers to a column in one of my tables called "auto". The program
compiles successfully on 7.3.

Here's a simple one-line illustration of the problem:

$ echo 'exec sql select auto from foo;' >temp.pgc
$ ecpg temp.pgc
temp.pgc:1: ERROR: syntax error at or near "auto"

I would think that quoting the identifier would allow it to work:

exec sql select "auto" from foo;

but it doesn't seem to make any difference.

If I comment out the call to ScanCKeyword() at line 584 of
src/interfaces/ecpg/preproc/pgc.l, the example above will compile
succesfully.


From: Michael Meskes <meskes(at)postgresql(dot)org>
To: PostgreSQL Bugs List <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #1075: ecpg rejects C keywords in SQL context
Date: 2004-02-15 15:41:09
Message-ID: 20040215154109.GA20205@1
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs

On Mon, Feb 09, 2004 at 03:56:16PM -0400, PostgreSQL Bugs List wrote:
> that refers to a column in one of my tables called "auto". The program
> compiles successfully on 7.3.

I just committed a fix so 'auto' works as it should. Hopefully I've
added all symbols that were missing. So if you find another one please
tell me.

Michael
--
Michael Meskes
Email: Michael at Fam-Meskes dot De
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes(at)jabber(dot)org
Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!