aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/ChangeLog4
-rw-r--r--src/interfaces/ecpg/preproc/pgc.l4
2 files changed, 7 insertions, 1 deletions
diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog
index 52b148951e8..780cea362f7 100644
--- a/src/interfaces/ecpg/ChangeLog
+++ b/src/interfaces/ecpg/ChangeLog
@@ -599,5 +599,9 @@ Thu Jun 10 21:09:12 CEST 1999
Wed Jun 16 20:21:42 CEST 1999
- Fixed another typo in preproc.y.
+
+Thu Jun 24 18:06:43 CEST 1999
+
+ - Fixed C comment bug that caused ecpg to not accept quoted quotes.
- Set library version to 3.0.0
- Set ecpg version to 2.6.0
diff --git a/src/interfaces/ecpg/preproc/pgc.l b/src/interfaces/ecpg/preproc/pgc.l
index d942a65b3ea..071dc4731d0 100644
--- a/src/interfaces/ecpg/preproc/pgc.l
+++ b/src/interfaces/ecpg/preproc/pgc.l
@@ -119,7 +119,9 @@ xqcat {quote}{space}*\n{space}*{quote}
dquote \"
xdstart {dquote}
xdstop {dquote}
+xdcqdq \\\"
xdinside [^"]*
+xdcinside ({xdinside}|{xdcqdq})*
/* Comments
* Ignored by the scanner and parser.
@@ -287,7 +289,7 @@ cppline {space}*#.*(\\{space}*\n)*\n*
yylval.str = mm_strdup(literal);
return CSTRING;
}
-<xdc>{xdinside} {
+<xdc>{xdcinside} {
if ((llen+yyleng) > (MAX_PARSE_BUFFER - 1))
yyerror("ERROR: quoted string parse buffer exceeded");
memcpy(literal+llen, yytext, yyleng+1);