Re: scan.l: check_escape_warning()

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: scan.l: check_escape_warning()
Дата
Msg-id 13483.1200066077@sss.pgh.pa.us
обсуждение исходный текст
Ответ на scan.l: check_escape_warning()  (Michael Meskes <meskes@postgresql.org>)
Ответы Re: scan.l: check_escape_warning()  (Michael Meskes <meskes@postgresql.org>)
Список pgsql-hackers
Michael Meskes <meskes@postgresql.org> writes:
> could anyone please enlighten me whether this function is still needed?
> AFAICT check_escape_warning() only has significant action if
> warn_on_first_escape is true. This variable is set to true only on label
> xqstart, but to false on xestart. However, check_escape_warning() and
> check_string_escape_warning() btw. are only called in mode xe. Seems to
> me that both are never called, or what am I missing?

Huh?

regression=# \set VERBOSITY verbose
regression=# select '\002'::text;
WARNING:  22P06: nonstandard use of escape in a string literal
LINE 1: select '\002'::text;              ^
HINT:  Use the escape string syntax for escapes, e.g., E'\r\n'.
LOCATION:  check_escape_warning, scan.l:967text 
------\x02
(1 row)

regression=# select '\\'::text;
WARNING:  22P06: nonstandard use of \\ in a string literal
LINE 1: select '\\'::text;              ^
HINT:  Use the escape string syntax for backslashes, e.g., E'\\'.
LOCATION:  check_string_escape_warning, scan.l:952text 
------\
(1 row)

Perhaps there's some discrepancy between the ecpg and backend lexers
as to where these are called?
        regards, tom lane


В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Roberts, Jon"
Дата:
Сообщение: could not open relation: Invalid argument
Следующее
От: Simon Riggs
Дата:
Сообщение: Transaction Snapshot Cloning