Re: Why is literal concatenation of __FUNCTION__ deprecated?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 29, 2002 at 11:35:40AM +0100, Jan Hudec wrote:
> On Mon, Oct 28, 2002 at 12:47:30PM -0800, Nat Ersoz wrote:
> >
> 
> AFAIK it's __FUNCTION__ itself that's depreciated, since someone added
> it in recent C specification in lowercase (to be more consistent with
> __LINE__ and __FILE__).

IIRC, it's both __FUNCTION__ and string concatenation that's
deprecated. __FUNCTION__ is supposed to be replaced by __func__, but
since older gcc's don't support it and the gcc folks will continue to
support __FUNCTION__ indefinitely (or so has been said on lkml), the
kernel will continue to use __FUNCTION__. 

As for string concatenation, instead of 

printk(KERN_DEBUG "in function " __FUNCTION__ ".\n"); 

one is supposed to use

printk(KERN_DEBUG, "in function %s.\n", __FUNCTION__); 
-- 
Muli Ben-Yehuda				    http://www.mulix.org/
mulix@mulix.org:~$ sctrace strace /bin/foo  http://syscalltrack.sf.net/
Quis custodes ipsos custodiet?              http://www.mulix.org/cv.html
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux