type_traits (integral_constant<>::value): Define.

2006-05-07  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traits (integral_constant<>::value): Define.
	* testsuite/tr1/4_metaprogramming/helper_classes/static_definition.cc:
	New.

From-SVN: r113605
This commit is contained in:
Paolo Carlini 2006-05-07 16:52:41 +00:00 committed by Paolo Carlini
parent 6b95f03f48
commit e716a54401
3 changed files with 47 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2006-05-07 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (integral_constant<>::value): Define.
* testsuite/tr1/4_metaprogramming/helper_classes/static_definition.cc:
New.
2006-05-04 Douglas Gregor <dgregor@cs.indiana.edu>
PR libstdc++/27404

View File

@ -1,6 +1,6 @@
// TR1 type_traits -*- C++ -*-
// Copyright (C) 2004, 2005 Free Software Foundation, Inc.
// Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -98,6 +98,9 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
typedef integral_constant<bool, true> true_type;
typedef integral_constant<bool, false> false_type;
template<typename _Tp, _Tp __v>
const _Tp integral_constant<_Tp, __v>::value;
/// @brief primary type categories [4.5.1].
template<typename>
struct is_void

View File

@ -0,0 +1,37 @@
// 2006-05-07 Paolo Carlini <pcarlini@suse.de>
//
// Copyright (C) 2006 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
// terms of the GNU General Public License as published by the
// Free Software Foundation; either version 2, or (at your option)
// any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// 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, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 4.3 Helper classes
#include <tr1/type_traits>
#include <testsuite_hooks.h>
void test01()
{
bool test __attribute__((unused)) = true;
const bool* p = &std::tr1::integral_constant<bool, true>::value;
VERIFY( p );
}
int main()
{
test01();
return 0;
}