Travis Vitek wrote:
As most of us know, I've been working on type_traits for the 4.3 release. In doing so, I've noticed that there are some pretty significant differences between tr1 and c++0x. My question is what _exactly_ are we wanting to implement here? Do we want to have the tr1 stuff as it is documented [in the tr1 final], or do we want the tr1 additions as they appear in the c++0x working draft?Some of the issues... 1. The namespace that these features appear in [std::tr1 vs std] 2. Section numbers for test names [4.meta.rel.cpp vs 20.meta.rel.cpp] 3. Subtle differences between behavior of traits 4. Deprecated traits like add_reference [now add_lvalue_reference] I just want to make absolutely sure that I'm working with the same expectations as everyone else and that we are trying to implement the c++0x draft features that were introduced in tr1. I'm currently writing to the c++0x draft, but my tests use old section numbers from the tr1 final, and everything I've written is currently in the std::tr1 namespace [using a macro _TR1].
IMO, we should target C++ 0x and forget TR1 even exists ;-) That said, all C++ 0x code should be guarded with the same macro until the next standard is released. Maybe something like _RWSTD_NO_EXT_CXX_0X? Martin
