http://bugs.winehq.org/show_bug.cgi?id=10599
Summary: dlls/oleaut32/tests/vartest.c fails Product: Wine Version: CVS/GIT Platform: PC-x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: test AssignedTo: wine-bugs@winehq.org ReportedBy: alexandru.balut@gmail.com
I'm running "make test" from dlls/oleaut32/tests and I get this error:
../../../tools/runtest -q -P wine -M oleaut32.dll -T ../../.. -p oleaut32_test.exe.so vartest.c && touch vartest.ok fixme:variant:VarMod Could not convert left type 4096 to 20? rc == 0x80020008 fixme:variant:VarMod Could not convert left type 8192 to 20? rc == 0x80020008 fixme:variant:VarMod Could not convert left type 16384 to 20? rc == 0x80020008 vartest.c:3143: Test failed: got VT_DATE(-1.5) expected VT_DATE(-1.4) vartest.c:3150: Test failed: got VT_R8(-1.5) expected VT_R8(-1.4) make: *** [vartest.ok] Error 2
I use wine-0.9.49-376-gc2f0697 on Ubuntu Gutsy (2.6.22-14-generic #1 SMP x86_64 GNU/Linux), the compiler is gcc version 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)
There is a similar report here: http://www.winehq.org/pipermail/wine-devel/2007-August/058585.html
http://bugs.winehq.org/show_bug.cgi?id=10599
Zac Brown zac@zacbrown.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zac@zacbrown.org
--- Comment #1 from Zac Brown zac@zacbrown.org 2007-11-29 07:21:07 --- This bug appears be some issue with the underlying x86_64 architecture. There's a note in dlls/oleaut32/tests/vartest.c that notes that some of the rounding is dependent on the bit pattern of a number (this note was about R4/R8 not DATE) but I'm wondering if there is a similar issue for DATE?
I can reproduce the bug on a dual quad-core Intel x86_64 chip, but on my laptop which is Core Duo (not Core 2 Duo) and running 32 bit Gutsy I can't reproduce it so there must be some underlying issue having to do with architecture.
If you read that mailing list post you linked as well, it shows that the discrepancy between i686 and x86_64.
-Zac
http://bugs.winehq.org/show_bug.cgi?id=10599
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dank@kegel.com Status|UNCONFIRMED |NEW Component|test |wine-ole Ever Confirmed|0 |1
--- Comment #2 from Dan Kegel dank@kegel.com 2007-11-29 08:10:26 --- I see this in my valgrind runs on x86_64, too.
http://bugs.winehq.org/show_bug.cgi?id=10599
--- Comment #3 from Alex Balut alexandru.balut@gmail.com 2007-12-03 18:07:40 --- This is what I get on W2000 when I run vartest: vartest.c:106: Tests skipped: No support for I8 and UI8 data types vartest.c:2145: Test failed: VarSub: 36|0x0, 20|0x0: Expected failure 0x80020005 , got 0x80020008, expected vt 0 got vt 0 vartest.c:6862: Test failed: VARPOW: expected coerced hres 0x0 type VT_R8, got hres 0x80020008 type EMPTY! vartest.c:6865: Test failed: VARPOW: CY value 4.000000, expected 4.000000 vartest.c:6890: Test failed: VARPOW: expected coerced hres 0x0 type VT_R8, got hres 0x80020008 type EMPTY! vartest.c:6893: Test failed: VARPOW: DECIMAL value 4.000000, expected 4.000000 vartest: 1025085 tests executed (0 marked as todo, 5 failures), 1 skipped.
(I'm not sure whether this information matters: The system runs in a vmware virtual machine, the CPU is reported Core 2 Duo.., it's a 32bit OS.)
Both 3143 and 3150 run fine here.
On XP all the tests seem to run fine: http://test.winehq.org/data/200712011000/#XP .. with 2 exceptions on 2 of the test machines: vartest.c:5317: Test failed: VarCat: VT_INT concat with VT_BOOL (TRUE) returned incorrect result vartest.c:5333: Test failed: VarCat: VT_INT concat with VT_BOOL (FALSE) returned inncorrect result vartest: 1031879 tests executed (0 marked as todo, 2 failures), 0 skipped.
The Wine test machine seems to be having the same problem as the one I initially reported.
Shall we mark these tests as "todo", and plan/hope to have at some point different tests for different architectures?
http://bugs.winehq.org/show_bug.cgi?id=10599
--- Comment #4 from Dan Kegel dank@kegel.com 2007-12-03 22:54:26 --- Yeah, probably mark some of them todo for the platforms they fail on.
But this one: vartest.c:6893: Test failed: VARPOW: DECIMAL value 4.000000, expected 4.000000 you should maybe also change to a more precise output format so we can see the lower-order digits that differ...
http://bugs.winehq.org/show_bug.cgi?id=10599
--- Comment #5 from Austin English austinenglish@gmail.com 2008-05-16 16:21:28 --- Is this still an issue in current (1.0-rc1 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=10599
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #6 from Dan Kegel dank@kegel.com 2008-05-16 16:40:06 --- Looks like this was fixed by http://source.winehq.org/git/wine.git/?a=commitdiff;h=56d8f51688f68114f26861... two weeks after this bug report was filed.
(This file is crawling with valgrind errors; see http://kegel.com/wine/valgrind/logs-2008-05-12/vg-oleaut32_vartest.txt so even though we can close this bug, we shouldn't relax about variants just yet.)
http://bugs.winehq.org/show_bug.cgi?id=10599
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Alexandre Julliard julliard@winehq.org 2008-05-23 10:37:46 --- Closing bugs fixed in 1.0-rc2.
http://bugs.winehq.org/show_bug.cgi?id=10599
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|CVS/GIT |unspecified
https://bugs.winehq.org/show_bug.cgi?id=10599
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |56d8f51688f68114f2686122fe2 | |ea818ced5e7b8 Component|ole |oleaut32