
Has bcp namespace renaming been tested against all Boost libraries in 1.43? I'm getting compile errors in (or caused by) the following libraries: type_traits, range, spirit, foreach, regex, iostreams (more details later in this message). The compile errors are from a full bjam build of Boost. I haven't compiled tests or built against my work project code, so I suspect there's more errors in header-only libraries.
Thanks for the report - the namespace substitution was tested, but we don't have automated tests for it - in fact full tests would be rather difficult to contrive, because as well as requiring that the modified code compile on it's own, we should also require that two different Boost versions work side by side.
I'm using g++ 4.1.2 on Linux (although these errors are not compiler specific - I'll also be compiling with VC++ 8.0 at some point).
All of these errors are easily fixed, and are "boost" text substitution problems. I was able to get all libraries to build after my changes, but I would rather not use hacked-up source (I prefer to work with the Boost developers and install non-modified Boost source into our Clearcase COTS VOB).
However, with these (obvious) compile errors, I'm wondering if the bcp namespace facilities are being tested with all Boost libraries? If not, can I work with John Maddock or someone to set up a test process? Besides doing a full extract / rename and build of the libraries, as many examples and tests as possible should also be compiled to find errors in header-only libraries not brought in to the library source build.
If you have the facilities to run a full test run after bcp substitution that would be great - the results would need to be compared to the results obtained without the substitution.
Of course it's possible all of the errors I've found have been introduced with new code in 1.43 (which still brings up the need to do a full bcp test before a Boost release), or that I somehow incorrectly used bcp, or there's fixes that haven't been applied to the mainline in SVN.
I suspect that the heuristics used aren't quite up to the job: I don't remember the details, but simply performing a global search and replace for "boost" doesn't quite work either :-( I will look into and try and fix all the issues you identify as soon as I can, Thanks for reporting these! John.