This patch is obsolete now since a month later the essentially identical
commit d276cf7112aa15aac102b03e519cc133da8ec1c1 Author: Rémi Bernon rbernon@codeweavers.com Date: Wed Jun 3 11:50:35 2020 +0200
msvcp120/tests: Fix signed integral cast warning.
First cast to int, then to enum file_type.
Reported by MinGW GCC 10 with -Woverflow.
Signed-off-by: Rémi Bernon rbernon@codeweavers.com Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
Gerald
On Sun, 3 May 2020, Gerald Pfeifer wrote:
GCC 10 warns
msvcp120.c:1777:11: warning: overflow in conversion from 'enum file_type' to 'int' changes value from 'type = 3735928559' to '-559038737' msvcp120.c:1807:11: warning: overflow in conversion from 'enum file_type' to 'int' changes value from 'type = 3735928559' to '-559038737' msvcp120.c:1817:11: warning: overflow in conversion from 'enum file_type' to 'int' changes value from 'type = 3735928559' to '-559038737'
where 3735928559 is 0xdeadbeef.
This happens since first this variable is assigned to an enum and that then to an int, and GCC diagnoses the latter as an overflow (from signed to unsigned).
Assigning a hex constant does not trigger, so simply break out those two assignments.
Gerald
Signed-off-by: Gerald Pfeifer gerald@pfeifer.com
dlls/msvcp120/tests/msvcp120.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/msvcp120/tests/msvcp120.c b/dlls/msvcp120/tests/msvcp120.c index 7a382ac6fa..3cfabaa7ca 100644 --- a/dlls/msvcp120/tests/msvcp120.c +++ b/dlls/msvcp120/tests/msvcp120.c @@ -1774,7 +1774,8 @@ static void test_tr2_sys__dir_operation(void)
memset(first_file_name, 0xff, MAX_PATH); memset(dest, 0, MAX_PATH);
- err = type = 0xdeadbeef;
- err = 0xdeadbeef;
- type = 0xdeadbeef; result_handle = NULL; result_handle = p_tr2_sys__Open_dir(first_file_name, "tr2_test_dir", &err, &type); ok(result_handle != NULL, "tr2_sys__Open_dir(): expect: not NULL, got %p\n", result_handle);
@@ -1804,7 +1805,8 @@ static void test_tr2_sys__dir_operation(void) ok(num_of_other_files == 0, "found %d other files\n", num_of_other_files);
memset(first_file_name, 0xff, MAX_PATH);
- err = type = 0xdeadbeef;
- err = 0xdeadbeef;
- type = 0xdeadbeef; result_handle = file; result_handle = p_tr2_sys__Open_dir(first_file_name, "not_exist", &err, &type); ok(result_handle == NULL, "tr2_sys__Open_dir(): expect: NULL, got %p\n", result_handle);
@@ -1814,7 +1816,8 @@ static void test_tr2_sys__dir_operation(void)
CreateDirectoryA("empty_dir", NULL); memset(first_file_name, 0xff, MAX_PATH);
- err = type = 0xdeadbeef;
- err = 0xdeadbeef;
- type = 0xdeadbeef; result_handle = file; result_handle = p_tr2_sys__Open_dir(first_file_name, "empty_dir", &err, &type); ok(result_handle == NULL, "tr2_sys__Open_dir(): expect: NULL, got %p\n", result_handle);