> 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@gmail.com>
>>
>> ---
>> 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.
>