瀏覽代碼

Force erroneous inclusions of compiler-*.h files to be errors

Replace worthless comments with actual preprocessor errors when including
the wrong versions of the compiler.h files.

[akpm@linux-foundation.org: make it work]
Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Robert P. J. Day 17 年之前
父節點
當前提交
94f582f82a
共有 4 個文件被更改,包括 12 次插入4 次删除
  1. 3 1
      include/linux/compiler-gcc.h
  2. 3 1
      include/linux/compiler-gcc3.h
  3. 3 1
      include/linux/compiler-gcc4.h
  4. 3 1
      include/linux/compiler-intel.h

+ 3 - 1
include/linux/compiler-gcc.h

@@ -1,4 +1,6 @@
-/* Never include this file directly.  Include <linux/compiler.h> instead.  */
+#ifndef __LINUX_COMPILER_H
+#error "Please don't include <linux/compiler-gcc.h> directly, include <linux/compiler.h> instead."
+#endif
 
 
 /*
 /*
  * Common definitions for all gcc versions go here.
  * Common definitions for all gcc versions go here.

+ 3 - 1
include/linux/compiler-gcc3.h

@@ -1,4 +1,6 @@
-/* Never include this file directly.  Include <linux/compiler.h> instead.  */
+#ifndef __LINUX_COMPILER_H
+#error "Please don't include <linux/compiler-gcc3.h> directly, include <linux/compiler.h> instead."
+#endif
 
 
 /* These definitions are for GCC v3.x.  */
 /* These definitions are for GCC v3.x.  */
 #include <linux/compiler-gcc.h>
 #include <linux/compiler-gcc.h>

+ 3 - 1
include/linux/compiler-gcc4.h

@@ -1,4 +1,6 @@
-/* Never include this file directly.  Include <linux/compiler.h> instead.  */
+#ifndef __LINUX_COMPILER_H
+#error "Please don't include <linux/compiler-gcc4.h> directly, include <linux/compiler.h> instead."
+#endif
 
 
 /* These definitions are for GCC v4.x.  */
 /* These definitions are for GCC v4.x.  */
 #include <linux/compiler-gcc.h>
 #include <linux/compiler-gcc.h>

+ 3 - 1
include/linux/compiler-intel.h

@@ -1,4 +1,6 @@
-/* Never include this file directly.  Include <linux/compiler.h> instead.  */
+#ifndef __LINUX_COMPILER_H
+#error "Please don't include <linux/compiler-intel.h> directly, include <linux/compiler.h> instead."
+#endif
 
 
 #ifdef __ECC
 #ifdef __ECC