Re: errors when there is a bit literal in ecpg

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: "Wang, Shenhao" <wangsh.fnst@cn.fujitsu.com>
Cc: "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2020-11-07T20:05:42Z
Lists: pgsql-hackers
"Wang, Shenhao" <wangsh.fnst@cn.fujitsu.com> writes:
> I met an error as below when I use ecpg

> a.pgc:5: ERROR: invalid bit string literal
> a.pgc:5: ERROR: internal error: unreachable state; please report this to <pgsql-bugs@lists.postgresql.org>

Indeed.  This has apparently been broken for a very long time (though
the "unreachable state" part is fairly new).

> I try to fix this bug by deleting 'addlitchar('b');' from source I also add a test case to test all const str in ecpg.

I thought that a whole new test case was overkill when we could just add a
couple of lines to an existing test.  Other than that, looks good, pushed.

			regards, tom lane



Commits

  1. Fix ecpg's mishandling of B'...' and X'...' literals.