|
24 | 24 | * Portions Copyright (c) 1994, Regents of the University of California
|
25 | 25 | *
|
26 | 26 | * IDENTIFICATION
|
27 |
| - * $PostgreSQL: pgsql/src/backend/parser/scan.l,v 1.159 2009/09/22 23:52:53 petere Exp $ |
| 27 | + * $PostgreSQL: pgsql/src/backend/parser/scan.l,v 1.160 2009/09/25 20:51:37 petere Exp $ |
28 | 28 | *
|
29 | 29 | *-------------------------------------------------------------------------
|
30 | 30 | */
|
@@ -231,7 +231,7 @@ xeescape[\\][^0-7]
|
231 | 231 | xeoctesc[\\][0-7]{1,3}
|
232 | 232 | xehexesc[\\]x[0-9A-Fa-f]{1,2}
|
233 | 233 | xeunicode[\\](u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})
|
234 |
| -xeunicodebad[\\]([uU]) |
| 234 | +xeunicodefail[\\](u[0-9A-Fa-f]{0,3}|U[0-9A-Fa-f]{0,7}) |
235 | 235 |
|
236 | 236 | /* Extended quote
|
237 | 237 | * xqdouble implements embedded quote, ''''
|
@@ -575,7 +575,7 @@ other.
|
575 | 575 | <xeu>\n|
|
576 | 576 | <xeu><<EOF>>{yyerror("invalid Unicode surrogate pair"); }
|
577 | 577 |
|
578 |
| -<xe>{xeunicodebad}{ |
| 578 | +<xe,xeu>{xeunicodefail}{ |
579 | 579 | ereport(ERROR,
|
580 | 580 | (errcode(ERRCODE_INVALID_ESCAPE_SEQUENCE),
|
581 | 581 | errmsg("invalid Unicode escape"),
|
|