
Dinkumware has made a copy of their TR1 test cases available to me, and I've been running then on the Boost CVS HEAD and reporting apparent failures to Boost library maintainers. John Maddock ran into some type traits test cases where the apparent failure was due to an issue with the TR1 spec itself. John wrote:
This all raises the um, interesting question of whether we should slavishly follow the TR1 text, or try to correct defects, and/or be ahead of the curve as Boost traditionally has been.
My answer is "that depends." If there is a problem with the TR1 specification, we should implement what we think is correct, and file a defect report with the C++ committee. If we have figured out a better way to do something, we should go ahead and implement the better way, and file a defect report with the C++ committee so that the C++0x version of the library can take advantage of the improvement. Should the deviation from TR1 be under macro control? Is this just QOI left up to the implementer? But otherwise, we should just follow TR1. The point of having a Technical Report is that implementers all follow the same script. Comments? Opinions? --Beman