Bug 1305637

Summary: Compile error during Wine 1.9.3 build
Product: [Fedora] Fedora Reporter: Michael Cronenworth <mike>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: caleb, davejohansen, jactry92, jakub, jwakely, law, mpolacek
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: gcc-5.3.1-6.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-04-13 23:23:04 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 1305195    
Attachments:
Description Flags
Preprocessed output from GCC none

Description Michael Cronenworth 2016-02-08 19:20:22 UTC
Created attachment 1122238 [details]
Preprocessed output from GCC

// Target: x86_64-redhat-linux
// Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,objc,obj-c++,fortran,ada,go,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --disable-libgcj --with-isl --enable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
// Thread model: posix
// gcc version 5.3.1 20151207 (Red Hat 5.3.1-2) (GCC)
//
// crypt_md5.c: In function 'MD5Update':
// crypt_md5.c:131:1: internal compiler error: in choose_baseaddr, at config/i386/i386.c:10412
//  }
//  ^


Version-Release number of selected component (if applicable):
gcc-5.3.1-2.fc23.x86_64


How reproducible:
Always

Steps to Reproduce:
Rebuild wine source RPM.
http://koji.fedoraproject.org/koji/buildinfo?buildID=734309


I am attaching the preprocessed source output generated by GCC when the compile failed.

The same code compiles correctly on GCC 6.

Comment 1 Michael Cronenworth 2016-02-10 14:21:34 UTC
I noticed that the preprocessed file compiles without error. The bug is only reproduced when compiling from source. If I compile the preprocessed file Wine is able to finish compiling without error. Is there any additional information required?

Comment 2 Michael Cronenworth 2016-02-11 22:37:36 UTC
Fedora's default CFLAGS are being used so -O2 is being used.

The code compiles from source with -O1 set. However, "dlls/crypt32/chain.c" fails to compile with -01 and must be compiled with -O0. I can complete a full Wine compile with -O0.

Comment 3 Michael Cronenworth 2016-02-12 03:35:17 UTC
(In reply to Michael Cronenworth from comment #1)
> I noticed that the preprocessed file compiles without error.

My mistake in not using optimizations in my test.

Reproducible:
gcc -O2 -x c -c wine-gcc-error.pp -o wine.o

Compiles:
gcc -O1 -x c -c wine-gcc-error.pp -o wine.o

Comment 4 Marek Polacek 2016-03-10 14:40:01 UTC
This was fixed in GCC6 with r232111.  Uros backported this patch to gcc5 branch as well, so this ought to be fixed in the next Fedora gcc5 build.

Comment 5 Michael Cronenworth 2016-04-04 04:52:10 UTC
It's been a few weeks and there has not been a new gcc 5 build. Is there an ETA? Thanks.

Comment 6 Michael Cronenworth 2016-04-13 23:23:04 UTC
The latest gcc package fixes this. Thanks.