Bug 58827 - Bochs 2.1.1 fails to compile with gcc-3.4
Bug#: 58827 Product:  Gentoo Linux Version: unspecified Platform: x86
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P2
Resolution: FIXED Assigned To: lu_zero@gentoo.org Reported By: adaker@f.kth.se
Component: Applications
URL: 
Summary: Bochs 2.1.1 fails to compile with gcc-3.4
Keywords:  
Status Whiteboard: 
Opened: 2004-07-29 14:08 0000
Description:   Opened: 2004-07-29 14:08 0000
Bochs 2.1.1 fails to compile with gcc-3.4.1. It builds fine with gcc-3.3.3-r6.

Reproducible: Always
Steps to Reproduce:
1. Use gcc34-x86-2004.2 profile.
2. emerge bochs

Actual Results:  
gcc -c -O2 -mtune=pentium4 -march=pentium4 -pipe -mfpmath=sse
-D_FILE_OFFSET_BITS=64 -D_LARGE_FILES   `sdl-config --cflags` -DUSE_WITH_CPU_SIM
-DPARANOID  -DNO_ASSEMBLER -I.. -I./.. -I../instrument/stubs
-I./../instrument/stubs -I. -I./. -I./stubs -I././stubs errors.c -o errors.o
gcc -c -O2 -mtune=pentium4 -march=pentium4 -pipe -mfpmath=sse
-D_FILE_OFFSET_BITS=64 -D_LARGE_FILES   `sdl-config --cflags` -DUSE_WITH_CPU_SIM
-DPARANOID  -DNO_ASSEMBLER -I.. -I./.. -I../instrument/stubs
-I./../instrument/stubs -I. -I./. -I./stubs -I././stubs reg_ld_str.c -o reg_ld_str.o
reg_ld_str.c:320: error: conflicting types for 'FPU_load_int16'
fpu_proto.h:144: error: previous declaration of 'FPU_load_int16' was here
reg_ld_str.c:320: error: conflicting types for 'FPU_load_int16'
fpu_proto.h:144: error: previous declaration of 'FPU_load_int16' was here
distcc[6774] ERROR: compile reg_ld_str.c on localhost failed
make[1]: *** [reg_ld_str.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/bochs-2.1.1/work/bochs-2.1.1/fpu'
make: *** [fpu/libfpu.a] Error 2

!!! ERROR: app-emulation/bochs-2.1.1 failed.
!!! Function src_compile, Line 57, Exitcode 2
!!! emake failed

(compiled with MAKEOPTS=-j1, otherwise the error messages get mixed up with the
rest of the output)


Portage 2.0.50-r9 (gcc34-x86-2004.2, gcc-3.4.1, glibc-2.3.4.20040619-r0,
2.6.7-gentoo-r11)
=================================================================
System uname: 2.6.7-gentoo-r11 i686 Mobile Intel(R) Pentium(R) 4     CPU
3.06GHzGentoo Base System version 1.5.1
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -mtune=pentium4 -march=pentium4 -pipe -mfpmath=sse"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /lib/modules /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config
/usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -mcpu=pentium4 -march=pentium4 -pipe -mfpmath=sse"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache distcc nostrip sandbox strict userpriv usersandbox"
GENTOO_MIRRORS="http://ds.thn.htu.se/linux/gentoo
ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp.du.se/pub/os/gentoo"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X acpi alsa avi berkdb cdr crypt cups doc dvd emacs encode fbcon foomaticdb
gdbm gif gnome gpm gtk gtk2 imlib java jpeg libg++ libwww mikmod motif mozilla
mpeg ncurses nls nptl oggvorbis opengl pam pdflib perl pic png python quicktime
readline sdl spell ssl svga tcltk tcpd tetex truetype x86 xml2 xmms xv zlib"

------- Comment #1 From Christian Adaker 2004-07-29 15:48:21 0000 -------
Created an attachment (id=36437) [details]
very dubious fix

Now, I wouldn't trust myself for a second when it comes to patching this, but
from looking at the other functions it seems to me like the header RegparmsN(2)
is correct.
Someone with a clue has to take a look at it, though.

Compiles fine and seems to run, anyway =P.

------- Comment #2 From Bret Towe 2004-08-18 19:44:11 0000 -------
looked over the fix and tried compiling it
its prob the right fix for the problem
ive not tried running it but it does compile

and if looked upstream my guess is would find a similiar fix

------- Comment #3 From Jan Gutter 2004-10-01 04:00:01 0000 -------
I don't think this fix is so dubious. I built bochs successfully and it's
running fine.

------- Comment #4 From tklauser@nuerscht.ch 2004-10-03 02:29:04 0000 -------
The fix looks okay to to me, since it is in Bochs CVS like that (although the
file will disapear in the next version).

------- Comment #5 From Luca Barbato 2005-01-31 19:31:37 0000 -------
the fix is correct, looks they made a typo.

Added in the ebuild, sorry for the delay