Skip to content

Commit a128b67

Browse files
authored
Merge a89e346 into 1277454
2 parents 1277454 + a89e346 commit a128b67

File tree

7 files changed

+64
-4
lines changed
  • ydb
    • docs/ru/core/yql/reference/yql-core/syntax/_includes
    • library/yql
      • sql/v1
      • tests/sql
        • dq_file/part14/canondata
          • test.test_expr-unicode_literals-default.txt-Analyze_
          • test.test_expr-unicode_literals-default.txt-Results_
        • yt_native_file/part14/canondata/test.test_expr-unicode_literals-default.txt-Results_

7 files changed

+64
-4
lines changed

.gitignore

+3-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@
66
# Unignore all dirs
77
!*/
88
# Unignore all files inside canondata dir
9-
!*/canondata/*
9+
!**/canondata/**
10+
11+
/canonization_show_res.log
1012

1113
# C libraries
1214
*.so

ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/lexer.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -169,9 +169,10 @@ SELECT $text;
169169

170170
### Типизированные строковые литералы {#typed-string-literals}
171171

172-
* Для строкового литерала, включая [многострочный](#multiline-string-literals), по умолчанию используется тип `String`.
172+
* Для строкового литерала, включая [многострочный](#multiline-string-literals), по умолчанию используется тип `String` (см. также [PRAGMA UnicodeLiterals](../pragma.md#UnicodeLiterals)).
173173
* С помощью следующих суффиксов можно явно управлять типом литерала:
174-
* `u``Utf8`;
174+
* `s` или `b` - `String`;
175+
* `u` или `t``Utf8`;
175176
* `y``Yson`;
176177
* `j``Json`.
177178

ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/pragma/global.md

+22
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,28 @@ ClassicDivision является [scoped](#pragmascope) настройкой.
207207
Не влияет на операции с числами с плавающей точкой или `Decimal`.
208208
CheckedOps является [scoped](#pragmascope) настройкой.
209209

210+
### UnicodeLiterals
211+
212+
`UnicodeLiterals`/`DisableUnicodeLiterals`
213+
214+
| Тип значения | По умолчанию |
215+
| --- | --- |
216+
| Флаг | false |
217+
218+
При включенном режиме строковые литералы без суффиксов вида "foo"/'bar'/@@multiline@@ будут иметь тип `Utf8`, при выключенном - `String`.
219+
UnicodeLiterals является [scoped](#pragmascope) настройкой.
220+
221+
### WarnUntypedStringLiterals
222+
223+
`WarnUntypedStringLiterals`/`DisableWarnUntypedStringLiterals`
224+
225+
| Тип значения | По умолчанию |
226+
| --- | --- |
227+
| Флаг | false |
228+
229+
При включенном режиме для строковых литералов без суффиксов вида "foo"/'bar'/@@multiline@@ будет генерироваться предупреждение. Его можно подавить, если явно выбрать суффикс `s` или `b` для типа `String`, либо `u` или `t` для типа `Utf8`.
230+
WarnUntypedStringLiterals является [scoped](#pragmascope) настройкой.
231+
210232
### AllowDotInAlias
211233

212234
| Тип значения | По умолчанию |

ydb/library/yql/sql/v1/sql_query.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -1628,7 +1628,7 @@ TNodePtr TSqlQuery::PragmaStatement(const TRule_pragma_stmt& stmt, bool& success
16281628
"unicodeliterals",
16291629
"disableunicodeliterals",
16301630
"warnuntypedstringliterals",
1631-
"disableuntypedstringliterals",
1631+
"disablewarnuntypedstringliterals",
16321632
};
16331633
const bool hasLexicalScope = withConfigure || lexicalScopePragmas.contains(normalizedPragma);
16341634
const bool withFileAlias = normalizedPragma == "file" || normalizedPragma == "folder" || normalizedPragma == "library" || normalizedPragma == "udf";
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
2+
3+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
4+
"e");
5+
^
6+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
7+
8+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
9+
"e");
10+
^
11+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
12+
13+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
14+
"e");
15+
^
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
2+
3+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
4+
"e");
5+
^
6+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
7+
8+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
9+
"e");
10+
^
11+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
12+
13+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
14+
"e");
15+
^
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<tmp_path>/program.sql:<main>: Warning: Parse Sql
2+
3+
<tmp_path>/program.sql:<main>:9:6: Warning: Please add suffix u or t for Utf8 strings or s or b for arbitrary binary strings
4+
"e");
5+
^

0 commit comments

Comments
 (0)