Travis Vitek wrote:
Martin Sebor wrote:
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 ;-)

So no _TR1 macro, no std::tr1 namespace, all tests named according to
the section in the draft in which the feature appears, and requirements
directly from the draft. That sounds good.

We should probably also rename and/or reorganize the Jira TR1
Components. Two possible approaches come to mind:

  1) Integrate each TR1 component into the C++ component where
     it will end up in C++ 0x.

  2) Rename each TR1 component to start with the C++ 0x section
     number but the (possibly new) name from C++0 0x and with
     the C++ 0x suffix. E.g., rename TR1.2 - General Utilities
     to 20. General Utilities (C++ 0x).

Do we have a preference?

Martin


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?


That is something that I hadn't considered. I'll add that immediately.

Martin


Reply via email to