I don't know if this matters, but I also get the error on the RollingFileAppender.
Original Message: ----------------- From: Curt Arnold [EMAIL PROTECTED] Date: Tue, 15 Mar 2005 18:44:54 -0600 To: log4cxx-user@logging.apache.org Subject: Fwd: Build namespace issues Begin forwarded message: > From: Curt Arnold <[EMAIL PROTECTED]> > Date: March 15, 2005 4:15:01 PM CST > To: Log4J Users List <log4j-user@logging.apache.org> > Subject: Re: Build namespace issues > > On Mar 15, 2005, at 3:31 PM, Ron Ohmer wrote: > >> I ran into a rather odd error when using SocketAppenders. >> >> I have a wrapper that has worked fine, no warnings, nothing until I >> added functionality for the SocketAppender.. >> >> Now I get what follows this.. Does anyone know the root of this >> (Other than SocketAppender.cpp.. :-)) BTW, VS.NET 2k3 is the build >> tool. >> > > The problem is that pervasively throughout log4cxx (even the CVS > HEAD), you see a construct like: > > class SocketImpl; > typedef helpers::ObjectPtrT<SocketImpl> SocketImplPtr; > > When one of these smart-pointer templates is used in a publicly > exposed method on a exported class, you end up with an exported method > depending on a non-exported class. If the template expansion differs > in any way from the expansion when the library was build, bad things > will happen hence the warning. > > What should be done is something like: > > class SocketImpl; > class LOG4CXX_EXPORT SocketImplPtr : public > helpers::ObjectPtrT<SocketImpl> { > ... > } > > I'll log this as a bug and work on it as soon I finish my current task > (likely 24-48 hours away). > > -------------------------------------------------------------------- mail2web - Check your email from the web at http://mail2web.com/ .