http://bugs.winehq.org/show_bug.cgi?id=34177
Bug #: 34177 Summary: -pipe makes mingw-g++ work unreliably Product: Wine Version: 1.6-rc5 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: b7.10110111@gmail.com Classification: Unclassified
Created attachment 45461 --> http://bugs.winehq.org/attachment.cgi?id=45461 Test case
How to reproduce: 1. Install mingw from mingw-get-inst-20120426.exe, use default settings. Don't pay attention at log clean error. 2. Do mingw-get upgrade "gcc<4.7" mingw-get upgrade "g++<4.7" (these are versions which should work for Qt-based apps; not sure if "gcc" line is actually needed) 3. Unpack attached test case 4. Now either run build.bat from "wine cmd" there, being inside the test directory, or run: wine c:/mingw/bin/g++ -c -pipe -O2 -o mainwindow.o mw-processed.cpp (you don't need to install Qt since the test file is a c++-preprocessed version, resulting from running "g++ -E") 5. Get the following error: {standard input}: Assembler messages: {standard input}:5343: Error: junk `(%esp)movl $0' after expression {standard input}:5343: Error: too many memory references for `mov' 6. Remove "-pipe" from command, and this works with the same assembly code. This all is quite sensitive to assembly code generated, e.g. remove "-O2" and you don't reproduce the bug; remove some lines from source — and again not reproduced...
Corresponding assembly code which causes the error (from changing "-c" to "-S"), from line 5343: movl %eax, 16(%esp) movl $0, 12(%esp) Seems previous line appears partially (starting from "(") on the next one, and second one is truncated starting from ",". I'm not sure what component has this bug, seems this is related either to string manipulation, or piping data between apps.
http://bugs.winehq.org/show_bug.cgi?id=34177
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://downloads.sourceforg | |e.net/project/mingw/Install | |er/mingw-get-inst/mingw-get | |-inst-20120426/mingw-get-in | |st-20120426.exe
--- Comment #1 from Ruslan Kabatsayev b7.10110111@gmail.com 2013-07-31 14:06:38 CDT --- URL field in the bug has link to mingw installer. Also have to say that this test case works correctly in windows, so this must be a bug in wine, not mingw.
http://bugs.winehq.org/show_bug.cgi?id=34177
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |msvcrt
--- Comment #2 from Ruslan Kabatsayev b7.10110111@gmail.com 2013-07-31 16:13:34 CDT --- A bisection for this particular test case revealed commit 027d9852105d515196f7c6271d76b8c5316e47cd, which modifies msvcrt. So setting component to msvcrt for now until proved wrong.
Note: This still shouldn't be considered a regression because before this commit another projects still fail to build with similar errors (junk data in assembly code). I.e. I can't yet be sure that this has worked at any previous version.
So, to check a future fix this test case is not enough — several more projects have to be checked.
http://bugs.winehq.org/show_bug.cgi?id=34177
--- Comment #3 from Ruslan Kabatsayev b7.10110111@gmail.com 2013-07-31 17:56:49 CDT --- Created attachment 45469 --> http://bugs.winehq.org/attachment.cgi?id=45469 Second test case
Here's another test case, which fails before commit 027d9852105d515196f7c6271d76b8c5316e47cd (when first one doesn't). Seems these two test cases are enough to check potential fixes for this bug. This should be compiled with similar options as for first file.
http://bugs.winehq.org/show_bug.cgi?id=34177
Ken Sharp kennybobs@o2.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source
http://bugs.winehq.org/show_bug.cgi?id=34177
Piotr Caban piotr.caban@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|wine-bugs@winehq.org |piotr@codeweavers.com
http://bugs.winehq.org/show_bug.cgi?id=34177
--- Comment #4 from Piotr Caban piotr.caban@gmail.com 2013-08-06 11:46:38 CDT --- Created attachment 45520 --> http://bugs.winehq.org/attachment.cgi?id=45520 mark stdin as console handle
http://bugs.winehq.org/show_bug.cgi?id=34177
--- Comment #5 from Piotr Caban piotr.caban@gmail.com 2013-08-06 11:47:46 CDT --- Created attachment 45521 --> http://bugs.winehq.org/attachment.cgi?id=45521 second patch
I'm attaching patches that should fix this bug. Does it work with them for you?
(You need to apply both of them, I'm going to send it to wine when Alexandre is back from vacation)
http://bugs.winehq.org/show_bug.cgi?id=34177
--- Comment #6 from Ruslan Kabatsayev b7.10110111@gmail.com 2013-08-06 12:15:50 CDT --- Yes, they fix it.
http://bugs.winehq.org/show_bug.cgi?id=34177
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
http://bugs.winehq.org/show_bug.cgi?id=34177
Piotr Caban piotr.caban@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |089cc7818299c0d8f6a2fa726d2 | |05db25aad895f Status|UNCONFIRMED |RESOLVED CC| |piotr.caban@gmail.com Resolution| |FIXED
--- Comment #7 from Piotr Caban piotr.caban@gmail.com 2013-08-21 15:18:55 CDT --- Fixed by f42c631d6e1b5c6cc16de4d329f29141dea47518 and 089cc7818299c0d8f6a2fa726d205db25aad895f commits.
http://bugs.winehq.org/show_bug.cgi?id=34177
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #8 from Alexandre Julliard julliard@winehq.org 2013-08-30 13:06:34 CDT --- Closing bugs fixed in 1.7.1.
http://bugs.winehq.org/show_bug.cgi?id=34177
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |1.6.x
http://bugs.winehq.org/show_bug.cgi?id=34177
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|1.6.x |---
--- Comment #9 from Alexandre Julliard julliard@winehq.org 2013-11-15 13:40:47 CST --- Removing 1.6.x milestone from bugs included in 1.6.1.