Fixed parser bug concerning octal numbers in single quotes.

This commit is contained in:
Michael Meskes 2002-06-17 13:23:27 +00:00
parent e4cd7c315f
commit 2fabb99388
2 changed files with 8 additions and 3 deletions

View File

@ -1265,6 +1265,11 @@ Wed Jun 12 14:04:11 CEST 2002
- Applied Lee Kindness' patch to fix one of memory allocation with
floating point numbers.
Mon Jun 17 15:23:51 CEST 2002
- Fixed parser bug in pgc.l. Octal numbers in single quotes are now
correctly handled.
- Set ecpg version to 2.10.0.
- Set library version to 3.4.0.

View File

@ -12,7 +12,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.92 2002/05/20 09:29:41 meskes Exp $
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.93 2002/06/17 13:23:27 meskes Exp $
*
*-------------------------------------------------------------------------
*/
@ -372,13 +372,13 @@ cppline {space}*#(.*\\{space})*.*
<xq>{xqstop} {
BEGIN(state_before);
yylval.str = mm_strdup(literalbuf);
printf("MM: %s\n", yylval.str);
return SCONST;
}
<xq>{xqdouble} { addlitchar('\''); }
<xq>{xqinside} { addlit(yytext, yyleng); }
<xq>{xqescape} { addlit(yytext, yyleng); }
<xq>{xqoctesc} { unsigned char c = strtoul(yytext+1, NULL, 8);
addlitchar(c); }
<xq>{xqoctesc} { addlit(yytext, yyleng); }
<xq>{xqcat} { /* ignore */ }
<xq><<EOF>> { mmerror(PARSE_ERROR, ET_ERROR, "Unterminated quoted string"); }