
Roland Schwarz <roland.schwarz@chello.at> writes:
Yeah, but be really careful, because there are only a few good ways to use an unnamed namespace in a header.
To be honest, I do not have the time at the moment to study this issue in detail. (Altough I am aware of the ODR.) The inline files date back to Bill Kempfs original thread implementation.
Okay, definitely not time to change it right now.
Since everything works I just thought to omit this warning.
I think we should leave the warning intact so we know we need to "study this issue in detail."
It is mainly guarding inline function definitions.
Why would one want to do that, I wonder?
I will take care of this in the thread_rewrite. I do not want to make (possibly large) changes for the 1.34. But if you think it is better to leave the warning turned on for the time beeing, I'll revert.
If you're 100% sure you're going to rewrite the code and eliminate any problems, I don't mind the idea of turning off the warning. We should just be sure we're being honest with ourselves, and not silencing legitimate complaints.
BTW.: a "fix" like the following I think will not be caught by inspect, while still potentially being able to violate ODR.
namespace { #include <boost/foo.ipp> }
True?
I don't know; why don't you try it? -- Dave Abrahams Boost Consulting www.boost-consulting.com