Bug 5478

Summary: include/asm/processor.h:75: error: array type has incomplete element type
Product: Other Reporter: Stefan Schmidt (zaphodb)
Component: OtherAssignee: Adrian Bunk (bunk)
Status: REJECTED WILL_NOT_FIX    
Severity: blocking    
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.4.32-rc1 Subsystem:
Regression: --- Bisected commit-id:
Attachments: full .config to reproduce compile error.

Description Stefan Schmidt 2005-10-21 05:23:08 UTC
Most recent kernel where this bug did not occur: 2.4.32-rc1
Distribution: Debian GNU/Linux unstable
Hardware Environment: Dual Opteron 246
Software Environment: gcc 4.0.2-2, libc6 2.3.5-7
Problem Description:

patch to 2.4.32-rc1 and make dep went through without any errors.

kernel:/usr/src/linux-2.4.32-rc1# make bzImage
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/split-include
scripts/split-include.c
scripts/split-include include/linux/autoconf.h include/config
gcc -D__KERNEL__ -I/usr/src/linux-2.4.32-rc1/include -Wall -Wstrict-prototypes
-Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe
-mpreferred-stack-boundary=2 -march=athlon -fno-unit-at-a-time  
-DKBUILD_BASENAME=main -c -o init/main.o init/main.c
In file included from /usr/src/linux-2.4.32-rc1/include/linux/kernel.h:15,
                 from /usr/src/linux-2.4.32-rc1/include/linux/wait.h:13,
                 from /usr/src/linux-2.4.32-rc1/include/linux/fs.h:12,
                 from /usr/src/linux-2.4.32-rc1/include/linux/capability.h:17,
                 from /usr/src/linux-2.4.32-rc1/include/linux/binfmts.h:5,
                 from /usr/src/linux-2.4.32-rc1/include/linux/sched.h:9,
                 from /usr/src/linux-2.4.32-rc1/include/linux/mm.h:4,
                 from /usr/src/linux-2.4.32-rc1/include/linux/slab.h:14,
                 from /usr/src/linux-2.4.32-rc1/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/usr/src/linux-2.4.32-rc1/include/asm/byteorder.h:14: warning: type qualifiers
ignored on function return type
/usr/src/linux-2.4.32-rc1/include/asm/byteorder.h:30: warning: type qualifiers
ignored on function return type
In file included from
/usr/src/linux-2.4.32-rc1/include/linux/byteorder/little_endian.h:11,
                 from /usr/src/linux-2.4.32-rc1/include/asm/byteorder.h:65,
                 from /usr/src/linux-2.4.32-rc1/include/linux/kernel.h:15,
                 from /usr/src/linux-2.4.32-rc1/include/linux/wait.h:13,
                 from /usr/src/linux-2.4.32-rc1/include/linux/fs.h:12,
                 from /usr/src/linux-2.4.32-rc1/include/linux/capability.h:17,
                 from /usr/src/linux-2.4.32-rc1/include/linux/binfmts.h:5,
                 from /usr/src/linux-2.4.32-rc1/include/linux/sched.h:9,
                 from /usr/src/linux-2.4.32-rc1/include/linux/mm.h:4,
                 from /usr/src/linux-2.4.32-rc1/include/linux/slab.h:14,
                 from /usr/src/linux-2.4.32-rc1/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/usr/src/linux-2.4.32-rc1/include/linux/byteorder/swab.h:160: warning: type
qualifiers ignored on function return type
/usr/src/linux-2.4.32-rc1/include/linux/byteorder/swab.h:173: warning: type
qualifiers ignored on function return type
/usr/src/linux-2.4.32-rc1/include/linux/byteorder/swab.h:186: warning: type
qualifiers ignored on function return type
/usr/src/linux-2.4.32-rc1/include/linux/byteorder/swab.h:200: warning: type
qualifiers ignored on function return type
In file included from /usr/src/linux-2.4.32-rc1/include/linux/prefetch.h:13,
                 from /usr/src/linux-2.4.32-rc1/include/linux/list.h:6,
                 from /usr/src/linux-2.4.32-rc1/include/linux/wait.h:14,
                 from /usr/src/linux-2.4.32-rc1/include/linux/fs.h:12,
                 from /usr/src/linux-2.4.32-rc1/include/linux/capability.h:17,
                 from /usr/src/linux-2.4.32-rc1/include/linux/binfmts.h:5,
                 from /usr/src/linux-2.4.32-rc1/include/linux/sched.h:9,
                 from /usr/src/linux-2.4.32-rc1/include/linux/mm.h:4,
                 from /usr/src/linux-2.4.32-rc1/include/linux/slab.h:14,
                 from /usr/src/linux-2.4.32-rc1/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/usr/src/linux-2.4.32-rc1/include/asm/processor.h:75: error: array type has
incomplete element type
make: *** [init/main.o] Error 1

.config:
CONFIG_MK7=y
CONFIG_SMP=y
CONFIG_NR_CPUS=2


I'll attach full .config in comment. 


Steps to reproduce:
Comment 1 Stefan Schmidt 2005-10-21 05:24:56 UTC
Created attachment 6354 [details]
full .config to reproduce compile error.
Comment 2 Adrian Bunk 2005-10-22 11:51:33 UTC
gcc 4 is not and will never be a supported compiler for kernel 2.4.

Please use either an older compiler or kernel 2.6.
Comment 3 Stefan Schmidt 2005-10-22 16:58:43 UTC
Ah i did not know that but i get the same error with gcc-2.95:

/usr/src/linux-2.4.31/include/asm/processor.h:75: error: array type has
incomplete element type
make: *** [init/main.o] Error 1
kernel:/usr/src/linux-2.4.31# gcc -v
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20011002 (Debian prerelease)
kernel:/usr/src/linux-2.4.31# echo $CC
gcc-2.95

PS: yes i applied the patch to 2.4.32-rc1 but did not rename the directory this
time.
Comment 4 Adrian Bunk 2005-10-22 17:26:21 UTC
I'm getting the error you describe when using gcc 4.0, but not when using gcc 2.95.

Please try
  make CC=gcc-2.95
Comment 5 Stefan Schmidt 2005-10-22 18:18:29 UTC
You're right, i did an alias for gcc but forgot about cc. My bad, sorry. Bug
closed again.