On Tue, 29 Jun 2010, Justin P. Mattock wrote:
Playing around with a printk program I noticed that the #warning
message is incomplete(when using kernel headers for userspace):
gcc printk.c -o printk
In file included from printk.c:3:
include/linux/kernel.h:733:2: warning: #warning Attempt to use kernel headers from user space, see http:
My guess for the web address not being displayed is "//" is treated as a comment.
So after changing "http://" to "www." I get the web address.(using firefox with this
address takes me right to the location). The warning looks like this:
In file included from printk.c:3:
warning: #warning Attempt to use kernel headers from user space, see www.kernelnewbies.org/KernelHeaders
Signed-off-by: Justin P. Mattock<justinmattock@xxxxxxxxx>
---
include/linux/kernel.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index 8317ec4..768196a 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -730,7 +730,7 @@ extern int do_sysinfo(struct sysinfo *info);
#ifndef __EXPORTED_HEADERS__
#ifndef __KERNEL__
-#warning Attempt to use kernel headers from user space, see http://kernelnewbies.org/KernelHeaders
+#warning Attempt to use kernel headers from user space, see www.kernelnewbies.org/KernelHeaders
#endif /* __KERNEL__ */
#endif /* __EXPORTED_HEADERS__ */
Hehe, ugly. How about making it a single string? GCC preprocessor
documentation suggests the same anyway ...
Neither `#error' nor `#warning' macro-expands its argument.
Internal whitespace sequences are each replaced with a single space.
The line must consist of complete tokens. It is wisest to make the
argument of these directives be a single string constant; this avoids
problems with apostrophes and the like.