On Fri, 20 Sep 2002, Jean Tourrilhes wrote:
> > Why not
> >
> > #define DERROR(dbg, fmt, args...) \
> > do { if (DEBUG_##dbg) \
> > printk(KERN_INFO "irnet: %s(): " fmt, __FUNCTION, args); \
> > } while(0)
> >
> > ?
> >
> > Thunder
>
> Try it, it won't work when there is zero args.
It got corrected shortly afterwards. The non-typo version is:
#define DERROR(dbg, fmt, args...) \
do { if(DEBUG_##dbg) \
printk(KERN_INFO "irnet: %s(): " fmt, __FUNCTION__, ##args); \
} while(0)
Example:
#define DEBUG(fmt, args...) \
printf("%s(): " fmt, __FUNCTION__, ## args)
int main(void)
{
DEBUG("I am hungry.\n");
exit(0);
}
# gcc -Wall -Os -o moehre -s moehre.c
# ./moehre
main(): I am hungry.
#
Thunder
-- assert(typeof((fool)->next) == typeof(fool)); /* wrong */- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/