|
12 | 12 | * |
13 | 13 | * |
14 | 14 | * IDENTIFICATION |
15 | | - * $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.135 2005/02/02 15:37:43 meskes Exp $ |
| 15 | + * $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.136 2005/06/16 01:43:48 momjian Exp $ |
16 | 16 | * |
17 | 17 | *------------------------------------------------------------------------- |
18 | 18 | */ |
@@ -139,8 +139,9 @@ xqstart{quote} |
139 | 139 | xqstop{quote} |
140 | 140 | xqdouble{quote}{quote} |
141 | 141 | xqinside[^\\']+ |
142 | | -xqescape [\\][^0-7] |
143 | | -xqoctesc [\\][0-7]{1,3} |
| 142 | +xqescape[\\][^0-7] |
| 143 | +xqoctesc[\\][0-7]{1,3} |
| 144 | +xqhexesc[\\]x[0-9A-Fa-f]{1,2} |
144 | 145 | xqcat{quote}{whitespace_with_newline}{quote} |
145 | 146 |
|
146 | 147 | /* $foo$ style quotes ("dollar quoting") |
@@ -400,7 +401,8 @@ cppline{space}*#(.*\\{space})*.*{newline} |
400 | 401 | <xq>{xqdouble}{addlitchar('\''); } |
401 | 402 | <xq>{xqinside}{addlit(yytext, yyleng); } |
402 | 403 | <xq>{xqescape} {addlit(yytext, yyleng); } |
403 | | -<xq>{xqoctesc} {addlit(yytext, yyleng); } |
| 404 | +<xq>{xqoctesc}{addlit(yytext, yyleng); } |
| 405 | +<xq>{xqhexesc}{addlit(yytext, yyleng); } |
404 | 406 | <xq>{xqcat}{/* ignore */ } |
405 | 407 | <xq>. { |
406 | 408 | /* This is only needed for \ just before EOF */ |
|