
David Abrahams wrote:
Another guideline that we don't check for, and maybe we never wrote down: all files containing C++ source code should have a 3-letter extension ending in "pp". This decision dates back to the earliest days of Boost, when Nico Josuttis was still a heavy player here (it was his idea, and a good one -- it makes searching through C++ source files much easier).
So please, no ".inl" files. If you really must use a separate file for inline implementation, use ".ipp"
Thank you. I didn't know this.
to instruct the inspect tool to skip.
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. Since everything works I just thought to omit this warning. It is mainly guarding inline function definitions. 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. 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? Roland