diff --git a/ydb/library/yql/core/yql_expr_type_annotation.cpp b/ydb/library/yql/core/yql_expr_type_annotation.cpp index 512de46d378c..06b1fbd0056c 100644 --- a/ydb/library/yql/core/yql_expr_type_annotation.cpp +++ b/ydb/library/yql/core/yql_expr_type_annotation.cpp @@ -386,7 +386,8 @@ IGraphTransformer::TStatus TryConvertToImpl(TExprContext& ctx, TExprNode::TPtr& return IGraphTransformer::TStatus::Error; } - if (*castResult != NKikimr::NUdf::ECastOptions::Complete) { + if (*castResult != NKikimr::NUdf::ECastOptions::Complete + && !(IsDataTypeIntegral(from) && IsDataTypeFloat(to))) { auto issue = TIssue(node->Pos(ctx), TStringBuilder() << "Consider using explicit CAST or BITCAST to convert from " << NKikimr::NUdf::GetDataTypeInfo(from).Name << " to " << NKikimr::NUdf::GetDataTypeInfo(to).Name); diff --git a/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/result.json b/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/result.json index edd8d834d925..9fcd198aee57 100644 --- a/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/result.json +++ b/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/result.json @@ -2285,9 +2285,6 @@ "checksum": "097cc951a42c1490602cb2c3fa54f391", "size": 2150, "uri": "https://{canondata_backend}/1925821/dbf7e45bd25c73ba757e166a0254ae4690dfd12e/resource.tar.gz#test.test_ImplictCasts-AutoConvert-Results_/results.txt" - }, - { - "uri": "file://test.test_ImplictCasts-AutoConvert-Results_/extracted" } ], "test.test[ImplictCasts-AutoConvertByIf-Debug]": [ @@ -2309,9 +2306,6 @@ "checksum": "d0a38074ae95a885af573a81649b785a", "size": 209, "uri": "https://{canondata_backend}/1925821/dbf7e45bd25c73ba757e166a0254ae4690dfd12e/resource.tar.gz#test.test_ImplictCasts-AutoConvertByIf-Results_/results.txt" - }, - { - "uri": "file://test.test_ImplictCasts-AutoConvertByIf-Results_/extracted" } ], "test.test[ImplictCasts-ImplicitEqualsOverVariantStruct-Debug]": [ diff --git a/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/test.test_ImplictCasts-AutoConvert-Results_/extracted b/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/test.test_ImplictCasts-AutoConvert-Results_/extracted deleted file mode 100644 index 4a23fab9efeb..000000000000 --- a/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/test.test_ImplictCasts-AutoConvert-Results_/extracted +++ /dev/null @@ -1,29 +0,0 @@ -/program.yql:
: Warning: Type annotation - - /program.yql:
:32:13: Warning: At function: RemovePrefixMembers - (let world (Write! world res_sink (Key) data '('('type)))) - ^ - /program.yql:
:31:12: Warning: At function: Append - (let data (Append data (Float '2))) - ^ - /program.yql:
:30:12: Warning: At function: Append - (let data (Append data (Uint64 '2))) - ^ - /program.yql:
:29:12: Warning: At function: Append - (let data (Append data (Int64 '2))) - ^ - /program.yql:
:29:25: Warning: Failed to convert type: Int64 to Double - (let data (Append data (Int64 '2))) - ^ - /program.yql:
:29:25: Warning: Consider using explicit CAST or BITCAST to convert from Int64 to Double - (let data (Append data (Int64 '2))) - ^ - /program.yql:
:30:12: Warning: At function: Append - (let data (Append data (Uint64 '2))) - ^ - /program.yql:
:30:25: Warning: Failed to convert type: Uint64 to Double - (let data (Append data (Uint64 '2))) - ^ - /program.yql:
:30:25: Warning: Consider using explicit CAST or BITCAST to convert from Uint64 to Double - (let data (Append data (Uint64 '2))) - ^ \ No newline at end of file diff --git a/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/test.test_ImplictCasts-AutoConvertByIf-Results_/extracted b/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/test.test_ImplictCasts-AutoConvertByIf-Results_/extracted deleted file mode 100644 index 63687b0d2910..000000000000 --- a/ydb/library/yql/tests/s-expressions/yt_native_file/part0/canondata/test.test_ImplictCasts-AutoConvertByIf-Results_/extracted +++ /dev/null @@ -1,14 +0,0 @@ -/program.yql:
: Warning: Type annotation - - /program.yql:
:8:13: Warning: At function: RemovePrefixMembers - (let world (Write! world res_sink (Key) data '('('type)))) - ^ - /program.yql:
:7:12: Warning: At function: If - (let data (If (Bool 'true) data (Double '2))) - ^ - /program.yql:
:6:12: Warning: Failed to convert type: Uint64 to Double - (let data (Uint64 '1)) - ^ - /program.yql:
:6:12: Warning: Consider using explicit CAST or BITCAST to convert from Uint64 to Double - (let data (Uint64 '1)) - ^ \ No newline at end of file