Fixed parser bug concerning octal numbers in single quotes.
authorMichael Meskes <[email protected]>
Mon, 17 Jun 2002 13:23:27 +0000 (13:23 +0000)
committerMichael Meskes <[email protected]>
Mon, 17 Jun 2002 13:23:27 +0000 (13:23 +0000)
src/interfaces/ecpg/ChangeLog
src/interfaces/ecpg/preproc/pgc.l

index 686114b5ae2694494976d565f3e67e738e1f1629..67ded6c3fd928251406298c4f168ad6c69c8e136 100644 (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.
 
index d8478e3bc3b16e5981b1819180fb794da6f2758d..bb250cb8ec0217537df965a7a1dbf70596bfa582 100644 (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"); }