Commit 9414f705 authored by bkoz's avatar bkoz
Browse files

2007-09-26 Benjamin Kosnik <bkoz@redhat.com>

	* include/bits/stl_algo.h: Add return type information to comments.
	* include/bits/algorithmfwd.h: Formatting.
	* testsuite/util/testsuite_hooks.h (NonDefaultConstructible): Move..
	* testsuite/util/testsuite_api.h: ...here. Add necessary operators
	for use in testing chapters 25 and 26.
	* testsuite/util/testsuite_character.h: Same.

	* testsuite/25_algorithms/*/requirements/explicit_instantiation/
	2.cc, pod.cc: New.

	* testsuite/26_numerics/accumulate, adjacent_difference, inner_product,
	partial_sum/requirements/explicit_instantiation/2.cc, pod.cc: New.
	
	* testsuite/26_numerics/numeric_arrays/*: Move contents into
	testsuite/26_numerics.

	* testsuite/26_numerics/numeric_operations: Same.
	
	* testsuite/23_containers/*/requirements/explicit_instantiation/2.cc:
	Adjust includes from testsuite_eh.h to testsuite_api.h.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128822 138bc75d-0d04-0410-961f-82ee72b054a4
parent dfd4b3f5
2007-09-26 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_algo.h: Add return type information to comments.
* include/bits/algorithmfwd.h: Formatting.
* testsuite/util/testsuite_hooks.h (NonDefaultConstructible): Move..
* testsuite/util/testsuite_api.h: ...here. Add necessary operators
for use in testing chapters 25 and 26.
* testsuite/util/testsuite_character.h: Same.
* testsuite/25_algorithms/*/requirements/explicit_instantiation/
2.cc, pod.cc: New.
* testsuite/26_numerics/accumulate, adjacent_difference, inner_product,
partial_sum/requirements/explicit_instantiation/2.cc, pod.cc: New.
* testsuite/26_numerics/numeric_arrays/*: Move contents into
testsuite/26_numerics.
* testsuite/26_numerics/numeric_operations: Same.
* testsuite/23_containers/*/requirements/explicit_instantiation/2.cc:
Adjust includes from testsuite_eh.h to testsuite_api.h.
2007-09-25 Richard Sandiford <rsandifo@nildram.co.uk>
* testsuite/lib/libstdc++.exp (check_v3_target_fileio): Test lseek.
2007-09-17 Benjamin Kosnik <bkoz@redhat.com>
2007-09-18 Benjamin Kosnik <bkoz@redhat.com>
Chalathip Thumkanon <chalathip@gmail.com>
PR libstdc++/32819
......
......@@ -23,7 +23,6 @@
* You should not attempt to use it directly.
*/
/*
adjacent_find
binary_search
......@@ -85,7 +84,6 @@
sort_heap
stable_partition
stable_sort
stable_sort
swap
swap_ranges
transform
......@@ -121,7 +119,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _BIter1, typename _BIter2>
_BIter2
copy_backward (_BIter1, _BIter1, _BIter2);
copy_backward(_BIter1, _BIter1, _BIter2);
// count
// count_if
......@@ -310,7 +308,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _FIter, typename _OIter>
_OIter
rotate_copy (_FIter, _FIter, _FIter, _OIter);
rotate_copy(_FIter, _FIter, _FIter, _OIter);
// search
// search_n
......@@ -333,11 +331,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
template<typename _Tp>
void
swap(_Tp&, _Tp& b);
swap(_Tp&, _Tp&);
template<typename _FIter1, typename _FIter2>
_FIter2
swap_ranges(_FIter1 first1, _FIter1, _FIter2);
swap_ranges(_FIter1, _FIter1, _FIter2);
// transform
......@@ -419,8 +417,15 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
void
generate(_FIter, _FIter, _Generator);
/*
XXX NB: return type different from ISO C++.
template<typename _OIter, typename _Size, typename _Tp>
void
generate_n(_OIter, _Size, _Generator);
*/
template<typename _OIter, typename _Size, typename _Generator>
void
_OIter
generate_n(_OIter, _Size, _Generator);
template<typename _IIter1, typename _IIter2>
......
......@@ -4248,7 +4248,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
* sequence.
* @param first A forward iterator.
* @param last A forward iterator.
* @param gen A function object taking no arguments.
* @param gen A function object taking no arguments and returning
* std::iterator_traits<_ForwardIterator>::value_type
* @return generate() returns no value.
*
* Performs the assignment @c *i = @p gen() for each @c i in the range
......@@ -4274,7 +4275,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
* sequence.
* @param first A forward iterator.
* @param n The length of the sequence.
* @param gen A function object taking no arguments.
* @param gen A function object taking no arguments and returning
* std::iterator_traits<_ForwardIterator>::value_type
* @return The end of the sequence, @p first+n
*
* Performs the assignment @c *i = @p gen() for each @c i in the range
......
......@@ -29,6 +29,7 @@
#include <deque>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
......@@ -29,6 +29,7 @@
#include <list>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
......@@ -29,6 +29,7 @@
#include <map>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
......@@ -29,6 +29,7 @@
#include <map>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
......@@ -29,6 +29,7 @@
#include <set>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
......@@ -29,6 +29,7 @@
#include <set>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
......@@ -29,6 +29,7 @@
#include <vector>
#include <testsuite_hooks.h>
#include <testsuite_api.h>
// { dg-do compile }
......
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_api.h>
namespace std
{
using __gnu_test::NonDefaultConstructible;
typedef NonDefaultConstructible value_type;
typedef value_type* iterator_type;
template iterator_type adjacent_find(iterator_type, iterator_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_character.h>
namespace std
{
using __gnu_test::pod_int;
typedef pod_int value_type;
typedef value_type* iterator_type;
template iterator_type adjacent_find(iterator_type, iterator_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_api.h>
namespace std
{
using __gnu_test::NonDefaultConstructible;
typedef NonDefaultConstructible value_type;
typedef value_type* iterator_type;
typedef std::less<value_type> compare_type;
template bool binary_search(iterator_type, iterator_type, const value_type&);
template bool binary_search(iterator_type, iterator_type,
const value_type&, compare_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_character.h>
namespace std
{
using __gnu_test::pod_int;
typedef pod_int value_type;
typedef value_type* iterator_type;
typedef std::less<value_type> compare_type;
template bool binary_search(iterator_type, iterator_type, const value_type&);
template bool binary_search(iterator_type, iterator_type,
const value_type&, compare_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_api.h>
namespace std
{
using __gnu_test::NonDefaultConstructible;
typedef NonDefaultConstructible value_type;
typedef value_type* iterator_type;
template iterator_type copy(iterator_type, iterator_type, iterator_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_character.h>
namespace std
{
using __gnu_test::pod_int;
typedef pod_int value_type;
typedef value_type* iterator_type;
template iterator_type copy(iterator_type, iterator_type, iterator_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_api.h>
namespace std
{
using __gnu_test::NonDefaultConstructible;
typedef NonDefaultConstructible value_type;
typedef value_type* iterator_type;
typedef unsigned short size_type;
template iterator_type copy_backward(iterator_type, iterator_type,
iterator_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_character.h>
namespace std
{
using __gnu_test::pod_int;
typedef pod_int value_type;
typedef value_type* iterator_type;
typedef unsigned short size_type;
template iterator_type copy_backward(iterator_type, iterator_type,
iterator_type);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_api.h>
namespace std
{
using __gnu_test::NonDefaultConstructible;
typedef NonDefaultConstructible value_type;
typedef value_type* iterator_type;
typedef iterator_traits<iterator_type>::difference_type difference_type;
template difference_type count(iterator_type, iterator_type,
const value_type&);
}
// { dg-do compile }
// 2007-09-20 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2007 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.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
#include <algorithm>
#include <testsuite_character.h>
namespace std
{
using __gnu_test::pod_int;
typedef pod_int value_type;
typedef value_type* iterator_type;
typedef iterator_traits<iterator_type>::difference_type difference_type;
template difference_type count(iterator_type, iterator_type,
const value_type&);
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment