TR1 header forwarders for GCC
Copyright Luis Machuca Bezzaza 2013

A simple set of headers to include GCC's tr1 implementation 
in a forwards-compatible manner.

The purpose of this headerset is to be used as a backend 
support when writing C++ code that intends to be 
compatible across C++03 and C++11, such as when 
using the cxxomfort library. This only provides uniform 
header inclusion; scope of eg.: namespace std::tr1 
can be handled separately.

Usage is simple. When using C++03 mode, 
just add /path/to/tr1_fwd/ (including the basename) to your 
compiler's / project's #include path. The headers here will 
then be picked on automatically in presence of a directive 
such as #include <array>. 
For C++11 mode, you won't need to add to #include path 
or be using this library.

What is implemented

Header forwarders for <array>, <random>, <tuple> and 
<type_traits> (new headers in tr1).

Header forwarders for <cctype>, <climits>, <cstdint>, 
<cstdio>, <functional>, <memory> and <utility>
(existing headers in c++98).

When the macros for GCC's "c++0x" emulation mode are detected, 
these headers just forward to the normal c++11 header names.

What might be implemented next

Header forwarders for <ccomplex>, <cfloat>, <cmath>, 
<cwchar>, <cwctype>, <unordered_map> and <unordered_set>.

What is not implemented

Header forwarder for <regex>, because GCC's implementation is 
horribly broken by their own admission. 
Just use something like PCRE instead.


Licensed under the MIT License, see LICENSE.txt.