Skip to contentSkip to conversation

Strange fixinclude behavior for GCC 3.0

DISCUSSION Bruce Korb 1 participant 1 message Jul 21, 2001 1 message not in the archive

lore
Share & tools
lore

Bruce Korb

author
#1 lore raw
In reply to a message not in the archive
Quoted 2 lines

Hello everybody at GCC :)

Hello,

Quoted 1 line

2.- Fixincludes fixes [several] includes from the linux kernel [...]

I ran fixincl against today's 2.4.7:

Quoted 10 lines

....
Applying machine_name to linux/a.out.h
Fixed: linux/a.out.h
....
Applying avoid_wchar_t_type to linux/nls.h
Fixed: linux/nls.h
....
Applying io_quotes_def to linux/i2c.h
Fixed: linux/i2c.h
....

Quoted 8 lines

Applying io_quotes_use to net/irda/irtty.h
Fixed: net/irda/irtty.h
Applying io_quotes_use to net/irda/irmod.h
Fixed: net/irda/irmod.h
Applying machine_name to net/dsfield.h
Fixed: net/dsfield.h
....
Cleaning up unneeded directories:

It looks like six headers got fixed. "linux/a.out.h" and "linux/nls.h" were properly fixed, "net/dsfield.h" is an unavoidable dumb fix, and there are *three* files that were unchanged and appear in the fixed directory: linux/i2c.h net/irda/irtty.h net/irda/irmod.h All three were "fixed" by io_quotes_def or _use. Since there is supposed to be code that does a byte-by-byte comparison of the results before the output file gets created, it is curious indeed. Something is tripping something up. Thanks for your report!

- Bruce

$ for f in `find * -type f` ; do diff -u $SDIR/$f $f ; done
--- /work/kernel/linux-2.4.7/include/linux/a.out.h
+++ linux/a.out.h       Fri Jul 20 17:44:23 2001
@@ -127,7 +136,7 @@
 #define SEGMENT_SIZE PAGE_SIZE
 #endif

-#ifdef linux
+#ifdef __linux__
#include <asm/page.h>
#if defined(__i386__) || defined(__mc68000__)
#define SEGMENT_SIZE 1024

nls.h Fri Jul 20 17:44:23 2001 renamed from work/kernel/linux-2.4.7/include/linux/nls.h +2 -0
@@ -1,10 +1,21 @@
 #ifndef _LINUX_NLS_H
 #define _LINUX_NLS_H
 
 #include <linux/init.h>
 
 /* unicode character */
+#ifndef __cplusplus
 typedef __u16 wchar_t;
+#endif
 
 struct nls_table {
        char *charset;

--- /work/kernel/linux-2.4.7/include/linux/i2c.h
+++ linux/i2c.h Fri Jul 20 17:44:26 2001
<<NO CHANGES>>

--- /work/kernel/linux-2.4.7/include/net/irda/irtty.h
+++ net/irda/irtty.h Fri Jul 20 17:44:29 2001
<<NO CHANGES>>

--- /work/kernel/linux-2.4.7/include/net/irda/irmod.h
+++ net/irda/irmod.h Fri Jul 20 17:44:29 2001
<<NO CHANGES>>

dsfield.h Fri Jul 20 17:44:29 2001 renamed from work/kernel/linux-2.4.7/include/net/dsfield.h +1 -1
@@ -51,7 +60,7 @@
 }
 
 
-#if 0 /* put this later into asm-i386 or such ... */
+#if 0 /* put this later into asm-__i386__ or such ... */
 
 static inline void ip_change_dsfield(struct iphdr *iph,__u16 dsfield)
 {