Обсуждение: Oops: ecpg changes <> to = (not good)

Поиск
Список
Период
Сортировка

Oops: ecpg changes <> to = (not good)

От
Stephen Birch
Дата:
In the process of cleaning up some memory leaks in the cvs tree, I
discovered that
the checked in version of ecpg interperates <> as =:

For example, if you run ecpg on the following:

test()
{ exec sql   select xxx from yyy where zzz <> ppp;
}

You get this output:

/* Processed by ecpg (2.6.11) */
/* These two include files are added by the preprocessor */
#include <ecpgtype.h>
#include <ecpglib.h>

test()
{ { ECPGdo(__LINE__, NULL, "select  xxx   from yyy where zzz  = ppp
",
ECPGt_EOIT, ECPGt_EORT);}
#line 5 "t.pgc"

}



Note that zzz <> ppp has been changed to zzz = ppp.  This is not broken
in 6.5.3.

Not good.

I would debug this myself, but do not understand lex and yacc well
enough yet.

Steve






Re: [INTERFACES] Oops: ecpg changes <> to = (not good)

От
Michael Meskes
Дата:
On Tue, Dec 14, 1999 at 12:21:34PM -0800, Stephen Birch wrote:
> In the process of cleaning up some memory leaks in the cvs tree, I
> discovered that
> the checked in version of ecpg interperates <> as =:

Oops. This typo got in there when I took over the simplified a_expr and
b_expr rules from gram.y.

> I would debug this myself, but do not understand lex and yacc well
> enough yet.

I already changed it in my source. As soon as I commit the correct version
will go in.

If you need a patch earlier I attach the patch.

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@Fam-Meskes.De           | Use PostgreSQL!

Вложения