Re: [2.6 patch] remove support for gcc < 3.2

From: Jan-Benedict Glaw
Date: Tue Aug 02 2005 - 16:48:04 EST


On Mon, 2005-08-01 00:26:07 +0200, Adrian Bunk <bunk@xxxxxxxxx> wrote:
> This patch removes support for gcc < 3.2 .
>
> The advantages are:
> - reducing the number of supported gcc versions from 8 to 4 [1]
> allows the removal of several #ifdef's and workarounds
[...]
> [1] support removed: 2.95, 2.96, 3.0, 3.1
> still supported: 3.2, 3.3, 3.4, 4.0

This patch in mind, I built the vax-linux kernel again with gcc-HEAD
(gcc-4.1) and it blew off in:

$ make V=1 ARCH=vax CROSS_COMPILE=vax-linux- mopboot
[...]
vax-linux-gcc -Wp,-MD,init/.initramfs.o.d -nostdinc -isystem /home/jbglaw/vax-linux/scm/build-20050802-171439-vax-linux/install/usr/lib/gcc/vax-linux/4.1.0/include -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -ffreestanding -O1 -fomit-frame-pointer -pipe -Wdeclaration-after-statement -Wno-pointer-sign -DKBUILD_BASENAME=initramfs -DKBUILD_MODNAME=initramfs -c -o init/initramfs.o init/initramfs.c
init/initramfs.c:10: error: message causes a section type conflict
init/initramfs.c:33: error: head causes a section type conflict
init/initramfs.c:80: error: ino causes a section type conflict
init/initramfs.c:80: error: major causes a section type conflict
[...]

Adding -fno-unit-at-a-time fixed this, but from what Google found, this
is actually a bug in the C sources: the __initdata variables are to be
put into a read-only segment but are missing a const qualifyer, so
-fno-unit-at-a-time seems to hide a bug here.

Could somebody comment on this? Or shall I open a bug report for GCC?

MfG, JBG

--
Jan-Benedict Glaw jbglaw@xxxxxxxxxx . +49-172-7608481 _ O _
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O
fuer einen Freien Staat voll Freier BÃrger" | im Internet! | im Irak! O O O
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));

Attachment: signature.asc
Description: Digital signature