On Sep 27, 2007, at 1:26 AM, leslie wang wrote:
Hi All,
I'm used log4cxx 0.9.7 in my project. Today I updated it to 0.10
and found LOG4CXX_LOG/INFO/... API change. In the past, I can use
LOG4CXX_LOG(logger, "aaa" <<< "bbb" << 10)
but now all of them are reporting error. I check the header file.
The MACRO change to a string now. Why does it have the change? If I
want to keep mininal change in my code, how should I do? thanks
Best regards
Leslie
Just in the last few days, the log4cxx SVN HEAD was modified to
restore the ability to use insertion operators in the LOG4CXX_INFO
and similar macros. The history of why that capability was lost and
what was done to restore it was described in a log4cxx-dev posting on
2007-09-25 (http://marc.info/?l=log4cxx-dev&m=119070382817489&w=2).
Please update your source to the latest and see if you still have the
same problem. (You can tell by examining logger.h, it is the latest
if it contains:
::log4cxx::helpers::MessageBuffer oss_; \
If the variable name is buf, then it is a couple of days old and will
have problems if you log variables named "buf". If it doesn't use
MessageBuffer then it is somewhere between 3 days and 3 years old and
would not be expected to support insertion operators at al.
If you do have problems with the latest code, please provide the
specifics of the problem so that we can address it (sample code,
compiler messages, name and version of compiler and operating system
in use).