diff options
author | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-10-01 10:39:16 +0000 |
---|---|---|
committer | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-10-01 10:39:16 +0000 |
commit | 679780faa4ff1682cdeb3c52eb0be3a7421bfdd8 (patch) | |
tree | 0b1e43c681fedc1ce960c78a9dc01d1c77d79554 /libstdc++-v3 | |
parent | 71021d76cf2edfc87ad098db824c1567746d702f (diff) | |
download | gcc-679780faa4ff1682cdeb3c52eb0be3a7421bfdd8.tar.gz |
2006-10-01 Paolo Carlini <pcarlini@suse.de>
* include/ext/type_traits.h: Avoid _T, badname for some targets;
also avoid plain T.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117347 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/ext/type_traits.h | 29 |
2 files changed, 20 insertions, 14 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b843fb4c8b5..99eff89a130 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,10 @@ 2006-10-01 Paolo Carlini <pcarlini@suse.de> + * include/ext/type_traits.h: Avoid _T, badname for some targets; + also avoid plain T. + +2006-10-01 Paolo Carlini <pcarlini@suse.de> + * config/io/basic_file_stdio.cc: As an extension, and consistently with C facilities, allow for in|out|app and in|out|app|binary openmodes. diff --git a/libstdc++-v3/include/ext/type_traits.h b/libstdc++-v3/include/ext/type_traits.h index 56aebebdf4e..27dda0b48ef 100644 --- a/libstdc++-v3/include/ext/type_traits.h +++ b/libstdc++-v3/include/ext/type_traits.h @@ -13,10 +13,10 @@ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // General Public License for more details. -// You should have received a copy of the GNU General Public License -// along with this library; see the file COPYING. If not, write to -// the Free Software Foundation, 59 Temple Place - Suite 330, Boston, -// MA 02111-1307, USA. +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. // As a special exception, you may use this file as part of a free // software library without restriction. Specifically, if other files @@ -62,11 +62,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) // Given an integral builtin type, return the corresponding unsigned type. - template<typename _T> + template<typename _Tp> struct __add_unsigned { private: - typedef __enable_if<std::__is_integer<_T>::__value, _T> __if_type; + typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type; public: typedef typename __if_type::__type __type; @@ -105,11 +105,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) // Given an integral builtin type, return the corresponding signed type. - template<typename _T> + template<typename _Tp> struct __remove_unsigned { private: - typedef __enable_if<std::__is_integer<_T>::__value, _T> __if_type; + typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type; public: typedef typename __if_type::__type __type; @@ -149,14 +149,15 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) // Compile time constants for builtin types. // Sadly std::numeric_limits member functions cannot be used for this. -#define __glibcxx_signed(T) ((T)(-1) < 0) -#define __glibcxx_digits(T) (sizeof(T) * __CHAR_BIT__ - __glibcxx_signed(T)) +#define __glibcxx_signed(_Tp) ((_Tp)(-1) < 0) +#define __glibcxx_digits(_Tp) \ + (sizeof(_Tp) * __CHAR_BIT__ - __glibcxx_signed(_Tp)) -#define __glibcxx_min(T) \ - (__glibcxx_signed(T) ? (T)1 << __glibcxx_digits(T) : (T)0) +#define __glibcxx_min(_Tp) \ + (__glibcxx_signed(_Tp) ? (_Tp)1 << __glibcxx_digits(_Tp) : (_Tp)0) -#define __glibcxx_max(T) \ - (__glibcxx_signed(T) ? ((T)1 << __glibcxx_digits(T)) - 1 : ~(T)0) +#define __glibcxx_max(_Tp) \ + (__glibcxx_signed(_Tp) ? ((_Tp)1 << __glibcxx_digits(_Tp)) - 1 : ~(_Tp)0) template<typename _Value> struct __numeric_traits_integer |