Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 588616 - sys-devel/gcc-4.2.4-r2 - gcc/toplev.c:539:1: error: redefinition of 'floor_log2'
Summary: sys-devel/gcc-4.2.4-r2 - gcc/toplev.c:539:1: error: redefinition of 'floor_log2'
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-11 16:22 UTC by Martin Mokrejš
Modified: 2021-01-06 12:58 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log.bz2 (build.log.bz2,118.43 KB, application/x-bzip2)
2016-07-11 16:22 UTC, Martin Mokrejš
Details
gcc-build-logs.tar.bz2 (gcc-build-logs.tar.bz2,162.87 KB, application/octet-stream)
2016-07-11 16:23 UTC, Martin Mokrejš
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Mokrejš 2016-07-11 16:22:30 UTC
Created attachment 440366 [details]
build.log.bz2

^
/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c: At top level:
/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c:539:1: error: redefinition of 'floor_log2'
 floor_log2 (unsigned HOST_WIDE_INT x)
 ^
In file included from /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c:58:0:
/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.h:173:1: note: previous definition of 'floor_log2' was here
 floor_log2 (unsigned HOST_WIDE_INT x)
 ^
/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c:574:1: error: redefinition of 'exact_log2'
 exact_log2 (unsigned HOST_WIDE_INT x)
 ^
In file included from /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c:58:0:
/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.h:179:1: note: previous definition of 'exact_log2' was here
 exact_log2 (unsigned HOST_WIDE_INT x)
 ^



$ emerge --info
Portage 2.2.28-prefix (python 2.7.11-final-0, prefix/linux/amd64, gcc-5.3.0, unavailable, 2.6.32-573.12.1.el6.Bull.88.x86_64 x86_64)
=================================================================
System uname: Linux-2.6.32-573.12.1.el6.Bull.88.x86_64-x86_64-Intel-R-_Xeon-R-_CPU_E5-2670_0_@_2.60GHz-with-redhat-6.4-Santiago
KiB Mem:   131942764 total,  11005128 free
KiB Swap:   65536128 total,  65536128 free
Timestamp of repository gentoo_prefix: Sun, 10 Jul 2016 21:57:51 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.24 p1.3) 2.24
app-shells/bash:          4.3_p39::gentoo_prefix
dev-java/java-config:     2.2.0-r3::gentoo_prefix
dev-lang/perl:            5.24.0-r1::gentoo_prefix
dev-lang/python:          2.7.11::gentoo_prefix
dev-util/cmake:           3.5.2-r1::gentoo_prefix
dev-util/pkgconfig:       0.29.1::gentoo_prefix
sys-devel/autoconf:       2.69::gentoo_prefix
sys-devel/automake:       1.13.4::gentoo_prefix, 1.14.1::gentoo_prefix, 1.15::gentoo_prefix
sys-devel/binutils:       2.24-r2::gentoo_prefix
sys-devel/gcc:            4.2.4-r2::gentoo_prefix, 4.8.5::gentoo_prefix, 4.9.3::gentoo_prefix, 5.3.0::gentoo_prefix
sys-devel/gcc-config:     1.8-r1::gentoo_prefix
sys-devel/libtool:        2.4.6-r1::gentoo_prefix
sys-devel/make:           4.2.1::gentoo_prefix
sys-kernel/linux-headers: 4.6::gentoo_prefix (virtual/os-headers)
Repositories:

gentoo_prefix
    location: /scratch/mmokrejs/gentoo/usr/portage
    sync-type: webrsync
    sync-uri: webrsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    aliases: gentoo

science
    location: /scratch/mmokrejs/gentoo/var/lib/layman/science
    masters: gentoo_prefix
    priority: 0

haskell
    location: /scratch/mmokrejs/gentoo/var/lib/layman/haskell
    masters: gentoo_prefix
    priority: 1

x-layman
    location: /scratch/mmokrejs/gentoo/var/lib/layman
    masters: gentoo_prefix
    priority: 2

ACCEPT_KEYWORDS="~amd64-linux"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -O2 -pipe -march=native"
DISTDIR="/scratch/mmokrejs/gentoo/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs case-insensitive-fs collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles force-prefix merge-sync news parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans unprivileged userfetch userpriv usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://gentoo.wheel.sk/ http://ftp.fi.muni.cz/pub/linux/gentoo/ http://gentoo.mirror.web4u.cz/ rsync://gentoo.mirror.dkm.cz/gentoo/ ftp://gentoo.mirror.web4u.cz/"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j4"
PKGDIR="/scratch/mmokrejs/gentoo/usr/portage/packages"
PORTAGE_CONFIGROOT="/scratch/mmokrejs/gentoo/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/scratch/mmokrejs/gentoo/var/tmp"
USE="X amd64 apache apache2 avx avx2 berkdb bindist boost bzip2 cairo cgi cli coin consolekit cracklib crypt cryptlib cxx dbus device-mapper dhcp dri emboss encode fax fbcon ffmpeg fontconfig fortran gbm gd gdbm gimp glpk gnutls gtk hal hwdb iconv imaging innodb java javascript jce jpeg jpg js jscript keymap ladspa lapack lcms libnotify lm_sensors mad mmx mmxext modules mpi mpich2 mysql ncurses nfs nls nptl nptlonly nscd openmp pcre pdf perl php png policykit polkit ppds pppd prefix prefix-guest python qt3support readline resolvconf seccomp server session slideshow sndfile sqlite sse sse2 sse3 sse4_1 sse4_2 ssl ssse3 suexec svg syslog tcl tcpd threads tiff tk truetype unicode usb v4l v4l2 vim-syntax vnc wavpack wifi x11 xcb xml xorg xrandr xv xvid xvmc zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USE_PYTHON="2.7"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Martin Mokrejš 2016-07-11 16:23:12 UTC
Created attachment 440368 [details]
gcc-build-logs.tar.bz2
Comment 2 Fabian Groffen gentoo-dev 2016-07-12 06:42:23 UTC
this looks similar to what we had on Darwin with Clang, where the compiler defaults to C99 mode.  Does adding -std=gnu89 to CFLAGS help in this case?
Comment 3 Martin Mokrejš 2016-07-12 08:14:10 UTC
Hmm, but the build process ignores my C*FLAGS, probably because this is in the very early steps.

>>> Configuring source in /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4 ...
 * strip-flags: CFLAGS: changed '-std=gnu89' to ''
 * strip-flags: CXXFLAGS: changed '-std=gnu89 -std=gnu89' to ''
 * CFLAGS=""
 * CXXFLAGS=""
 * LDFLAGS="-Wl,-O1"

 * PREFIX:          /scratch/mmokrejs/gentoo/usr
 * BINPATH:         /scratch/mmokrejs/gentoo/usr/x86_64-pc-linux-gnu/gcc-bin/4.2.4
 * LIBPATH:         /scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.4
 * DATAPATH:        /scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4
 * STDCXX_INCDIR:   /scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.4/include/g++-v4

 * Languages:       c,c++,fortran

 * Configuring GCC with: 
 *      --host=x86_64-pc-linux-gnu 
 *      --build=x86_64-pc-linux-gnu 
 *      --prefix=/scratch/mmokrejs/gentoo/usr 
 *      --bindir=/scratch/mmokrejs/gentoo/usr/x86_64-pc-linux-gnu/gcc-bin/4.2.4 
 *      --includedir=/scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.4/include 
 *      --datadir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4 
 *      --mandir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4/man 
 *      --infodir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4/info 
 *      --with-gxx-include-dir=/scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.4/include/g++-v4 
 *      --enable-languages=c,c++,fortran 
 *      --enable-obsolete 
 *      --enable-secureplt 
 *      --disable-werror 
 *      --with-system-zlib 
 *      --enable-nls 
 *      --without-included-gettext 
 *      --enable-checking=release 
 *      --enable-shared 
 *      --enable-threads=posix 
 *      --with-local-prefix=/scratch/mmokrejs/gentoo/usr 
 *      --enable-__cxa_atexit 
 *      --enable-clocale=gnu 
 *      --disable-multilib 
 *      --disable-altivec 
 *      --disable-libgcj 
 *      --enable-libgomp 
 *      --disable-libmudflap 
 *      --disable-libssp

/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/scratch/mmokrejs/gentoo/usr --bindir=/scratch/mmokrejs/gentoo/usr/x86_64-pc-linux-gnu/gcc-bin/4.2.4 --includedir=/scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.4/include --datadir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4 --mandir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4/man --infodir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/4.2.4/info --with-gxx-include-dir=/scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.4/include/g++-v4 --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --enable-shared --enable-threads=posix --with-local-prefix=/scratch/mmokrejs/gentoo/usr --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --disable-altivec --disable-libgcj --enable-libgomp --disable-libmudflap --disable-libssp

...

gcc    -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wmissing-format-attribute    -DHAVE_CONFIG_H -I. -I. -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc -I/
scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/. -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/../include -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/../libcpp/include  -I/scratch/mmokrejs/gentoo/var/tmp/
portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/../libdecnumber -I../libdecnumber    \
  -DTARGET_NAME=\"x86_64-pc-linux-gnu\" \
  -c /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c -o toplev.o
Comment 4 Fabian Groffen gentoo-dev 2016-07-12 08:16:29 UTC
try CC="gcc -std=gnu89"
Comment 5 Martin Mokrejš 2016-07-12 08:20:55 UTC
But principially it does fix the issue:

cd /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/build/gcc

gcc -std=gnu89 -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wmissing-format-attribute    -DHAVE_CONFIG_H -I. -I. -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/. -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/../include -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/../libcpp/include  -I/scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/../libdecnumber -I../libdecnumber  -DTARGET_NAME=\"x86_64-pc-linux-gnu\"    -c /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-4.2.4-r2/work/gcc-4.2.4/gcc/toplev.c -o toplev.o

$ ls -latr toplev.o 
-rw-rw-r-- 1 mmokrejs mmokrejs 62104 Jul 12 10:18 toplev.o
$

$ gcc -v
Using built-in specs.
COLLECT_GCC=/scratch/mmokrejs/gentoo/usr/x86_64-pc-linux-gnu/gcc-bin/5.3.0/gcc
COLLECT_LTO_WRAPPER=/scratch/mmokrejs/gentoo/usr/libexec/gcc/x86_64-pc-linux-gnu/5.3.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /scratch/mmokrejs/gentoo/var/tmp/portage/sys-devel/gcc-5.3.0/work/gcc-5.3.0/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/scratch/mmokrejs/gentoo/usr --bindir=/scratch/mmokrejs/gentoo/usr/x86_64-pc-linux-gnu/gcc-bin/5.3.0 --includedir=/scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/5.3.0/include --datadir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/5.3.0 --mandir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/5.3.0/man --infodir=/scratch/mmokrejs/gentoo/usr/share/gcc-data/x86_64-pc-linux-gnu/5.3.0/info --with-gxx-include-dir=/scratch/mmokrejs/gentoo/usr/lib/gcc/x86_64-pc-linux-gnu/5.3.0/include/g++-v5 --with-python-dir=/scratch/mmokrejs/gentoo/share/gcc-data/x86_64-pc-linux-gnu/5.3.0/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 5.3.0 p1.0, pie-0.6.5' --enable-libstdcxx-time --enable-shared --enable-threads=posix --with-local-prefix=/scratch/mmokrejs/gentoo/usr --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --with-multilib-list=m64 --disable-altivec --disable-fixed-point --disable-libgcj --enable-libgomp --disable-libmudflap --disable-libssp --enable-lto --without-cloog --enable-libsanitizer
Thread model: posix
gcc version 5.3.0 (Gentoo 5.3.0 p1.0, pie-0.6.5) 
$
Comment 6 Martin Mokrejš 2016-07-12 09:30:42 UTC
(In reply to Fabian Groffen from comment #4)
> try CC="gcc -std=gnu89"

And wow, this indeed worked around the strip-flags. Yes, I managed to emerge gcc-4.2.4-r2 by this approach. Thank you.
Comment 7 Fabian Groffen gentoo-dev 2021-01-06 12:58:27 UTC
this version is long gone