- From: Mikhail Grouchinski <mgrouch@usa.net>
- Date: 18 Feb 99 18:10:23 EST
- To: www-lib@w3.org
I new two previous variants.
I like the third one
HTTRACE((type, msg, args));
#ifdef LIBWWW_TRACING
#define HTTRACE(args) HTTrace args
#else
#define HTTRACE(args) if (0); else;
#endif
void
HTTrace(int type, const char * msg, ...)
{
if(WWWTRACE & type) {
bla bla bla
}
}
frystyk@w3.org wrote:
At 16:38 2/18/99 EST, Mikhail Grouchinski wrote:
>libwww HTTrace function doesn't print the file name and line.
>This information would be very helpful for debuging.
>I offer the simple solution how to fix this problem.
This is very interesting - what I would love would be to have all the trace
messages be defines so that they can be left out if you want to make a
small application. As there are so many trace messages, they will take up
quite a lot of space.
The way it is often handled is that you have a set of macros
HTTRACE1(type, msg, arg1)
HTTRACE2(type, msg, arg1, arg2)
HTTRACE3(type, msg, arg1, arg2, arg3)
These would then replace
if (type) HTTrace(msg, arg1...);
that you see all over in the code.
Eric Prud'hommeaux proposed an alternative where we instead have
HTTRACE(type, msg, arg1_arg1_arg3)
that is, the args are glued together so that the preprocessor doesn't get
confused.
What do you think?
Henrik
--
Henrik Frystyk Nielsen,
World Wide Web Consortium
http://www.w3.org/People/Frystyk
____________________________________________________________________
Get free e-mail and a permanent address at http://www.netaddress.com/?N=1
Received on Thursday, 18 February 1999 18:16:36 UTC