Commit Graph

8437 Commits

Author SHA1 Message Date
Jonathan Wakely
9793232966 re PR libstdc++/63449 (documentation of vector space overhead management)
PR libstdc++/63449
	* doc/xml/manual/containers.xml: Remove outdated section.
	* doc/html/*: Regenerate.

From-SVN: r215849
2014-10-03 14:36:57 +01:00
Jonathan Wakely
d17f7d8a9d ctgmath: Include <complex>.
* include/c_global/ctgmath: Include <complex>.
	* testsuite/26_numerics/headers/ctgmath/complex.cc: New.
	* doc/xml/manual/status_cxx2011.xml: Update.
	* doc/html/manual/status.html: Regenerate.

From-SVN: r215803
2014-10-02 16:52:24 +01:00
Edward Smith-Rowland
f65eb9e641 stl_function.h: Generic associative lookup feature is not supported.
2014-10-02  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* include/bits/stl_function.h: Generic associative lookup feature
	is not supported.
	* testsuite/experimental/feat-lib-fund.cc: <experimental/any> is
	actually available.
	* testsuite/experimental/feat-cxx14.cc: Add test for __cpp_lib_is_final.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
	* testsuite/20_util/duration/literals/range.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
	Adjust.

From-SVN: r215801
2014-10-02 12:38:41 +00:00
François Dumont
4681f59563 printers.py (StdDebugIteratorPrinter.to_string): Adapt to latest modifications on debug iterators.
2014-10-01  François Dumont  <fdumont@gcc.gnu.org>

	* python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter.to_string):
	Adapt to latest modifications on debug iterators.

From-SVN: r215775
2014-10-01 19:24:23 +00:00
Edward Smith-Rowland
4db7fcb9a8 type_traits: Add is_final<> type trait for C++14.
2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* include/std/type_traits: Add is_final<> type trait for C++14.
	* testsuite/util/testsuite_tr1.h: Add 
	* testsuite/20_util/is_final/requirements/
	explicit_instantiation.cc: New.
	* testsuite/20_util/is_final/requirements/typedefs.cc: New.
	* testsuite/20_util/is_final/value.cc: New.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.

From-SVN: r215753
2014-10-01 11:59:29 +00:00
Edward Smith-Rowland
a15f7cb8b8 Implement SD-6: SG10 Feature Test Recommendations
2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* internal.h (lexer_state, spec_nodes): Add in__has_include__.
	* directives.c: Support __has_include__ builtin.
	* expr.c (parse_has_include): New function to parse __has_include__
	builtin; (eval_token()): Use it.
	* files.c (_cpp_has_header()): New funtion to look for header;
	(open_file_failed()): Not an error to not find a header file for
	__has_include__.
	* identifiers.c (_cpp_init_hashtable()): Add entry for __has_include__.
	* pch.c (cpp_read_state): Lookup __has_include__.
	* traditional.c (enum ls, _cpp_scan_out_logical_line()): Walk through
	__has_include__ statements.

2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* c-cppbuiltin.c (c_cpp_builtins()): Define language feature
	macros and the __has_header macro.

2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* include/bits/basic_string.h: Add __cpp_lib feature test macro.
	* include/bits/stl_algobase.h: Ditto.
	* include/bits/stl_function.h: Ditto.
	* include/bits/unique_ptr.h: Ditto.
	* include/std/chrono: Ditto.
	* include/std/complex: Ditto.
	* include/std/iomanip: Ditto.
	* include/std/shared_mutex: Ditto.
	* include/std/tuple: Ditto.
	* include/std/type_traits: Ditto.
	* include/std/utility: Ditto.
	* testsuite/experimental/feat-cxx14.cc: New.
	* testsuite/experimental/feat-lib-fund.cc: New.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
	* testsuite/20_util/duration/literals/range.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
	Adjust.

2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* g++.dg/cpp1y/feat-cxx11-neg.C: New.
	* g++.dg/cpp1y/feat-cxx11.C: New.
	* g++.dg/cpp1y/feat-cxx14.C: New.
	* g++.dg/cpp1y/feat-cxx98.C: New.
	* g++.dg/cpp1y/feat-cxx98-neg.C: New.
	* g++.dg/cpp1y/phoobhar.h: New.
	* g++.dg/cpp1y/testinc/phoobhar.h: New.

From-SVN: r215752
2014-10-01 11:49:23 +00:00
Siva Chandra Reddy
b073d15fe5 hook.in: Only import libstdcxx.v6.
2014-09-30  Siva Chandra Reddy  <sivachandra@google.com>

	* python/hook.in: Only import libstdcxx.v6.
	* python/libstdcxx/v6/__init__.py: Load printers and xmethods.

From-SVN: r215726
2014-09-30 16:33:27 +01:00
Jonathan Wakely
24f21354f8 status_cxx2011.xml: Update.
* doc/xml/manual/status_cxx2011.xml: Update.
	* doc/html/manual/status.html: Regenerate.

From-SVN: r215710
2014-09-30 10:24:53 +01:00
Andreas Schwab
ff5fdf6746 baseline_symbols.txt: New file.
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
file.

From-SVN: r215696
2014-09-29 22:35:22 +00:00
Andreas Schwab
2529c937df configure.host (abi_baseline_pair): If try_cpu is generic use host_cpu for the default.
* configure.host (abi_baseline_pair): If try_cpu is generic use
host_cpu for the default.

From-SVN: r215695
2014-09-29 22:33:41 +00:00
François Dumont
ebd4c354b3 re PR libstdc++/62313 (Data race in debug iterators)
2014-09-29  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/62313
	* include/debug/safe_base.h
	(_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
	(_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
	* include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
	before _Safe_iterator_base in memory. Lock before modifying the iterator
	in numerous places.
	* include/debug/safe_local_iterator.h
	(_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
	declaration.
	(_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
	Likewise.
	* include/debug/safe_unordered_base.h (_Safe_local_iterator<>):  Move
	normal iterator before _Safe_iterator_base in memory. Lock before
	modifying the iterator in numerous places.
	* include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
	* include/debug/safe_sequence.tcc
	(_Safe_sequence<>::_M_transfer_from_if): Adapt.

From-SVN: r215693
2014-09-29 21:22:17 +00:00
Jonathan Wakely
e51cf2f559 DR 1339
DR 1339
	* doc/xml/manual/status_cxx2011.xml: Update.
	* include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
	an iterator.
	(__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
	* include/bits/stl_vector.h (vector::_M_fill_initialize,
	vector::_M_default_initialize): Use returned iterator.
	* include/bits/vector.tcc (vector::_M_fill_assign,
	vector::_M_fill_insert, vector::_M_default_append): Likewise.
	* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
	16505.cc: Adjust return type.
	* testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
	dr1339.cc: New.

From-SVN: r215606
2014-09-25 16:27:18 +01:00
Jonathan Wakely
c5b2614754 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
From-SVN: r215596
2014-09-25 13:14:15 +01:00
Jonathan Wakely
755176105f * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
From-SVN: r215593
2014-09-25 11:50:31 +01:00
Jonathan Wakely
7569cc5753 bool_neg.cc: New.
* testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
	* testsuite/27_io/basic_ios/conv/bool.cc: New.
	* testsuite/27_io/basic_ios/conv/voidptr.cc: New.

From-SVN: r215592
2014-09-25 11:22:51 +01:00
Tim Shen
2bde8cac37 re PR libstdc++/63199 (Inserting std::wregex to std::vector loses some std::wregex values)
PR libstdc++/63199
	* include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
	basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
	_M_loc for basic_regex.
	* include/bits/regex_automaton.h: Add _M_traits for _NFA.
	* include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
	Make _Compiler::_M_nfa heap allocated.
	* include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
	_Compiler::_M_nfa heap allocated.
	* include/bits/regex_executor.h (_Executor::_M_is_word):
	Fix accessing _M_traits.
	* include/bits/regex_executor.tcc (_Executor::_M_dfs):
	Fix accessing _M_traits.
	* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
	New testcase.

From-SVN: r215578
2014-09-25 04:43:19 +00:00
Jonathan Wakely
2d57872662 re PR libstdc++/56193 (ios_base should replace operator void* with explicit operator bool in C++11 onwards.)
PR libstdc++/56193
	* config/abi/pre/gnu.ver: Add new exports.
	* include/bits/basic_ios.h (basic_ios::operator bool): Define.
	* src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.

From-SVN: r215571
2014-09-24 23:13:35 +01:00
Jonathan Wakely
407f9471cd gnu.ver: Make GLIBCXX_3.4 patterns stricter so the new GLIBCXX_3.4.21 symbols don't...
* config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
	new GLIBCXX_3.4.21 symbols don't match them.

From-SVN: r215570
2014-09-24 23:13:29 +01:00
François Dumont
c6195f588b re PR libstdc++/29988 (More stl_tree.h enhancements: improving operator=)
2014-09-24  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/29988
	* include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
	(_Rb_tree_alloc_node<>): New.
	(_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
	(_Rb_tree<>::_M_assign_unique): New.
	(_Rb_tree<>::_M_assign_equal): New.
	(_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
	* include/bits/stl_map.h
	(std::map<>::operator=(std::map<>&&)): Default implementation.
	(std::map<>::operator=(initializer_list<>)): Adapt to use
	_Rb_tree::_M_assign_unique.
	* include/bits/stl_multimap.h
	(std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
	(std::multimap<>::operator=(initializer_list<>)): Adapt to use
	_Rb_tree::_M_assign_equal.
	* include/bits/stl_set.h
	(std::set<>::operator=(std::set<>&&)): Default implementation.
	(std::set<>::operator=(initializer_list<>)): Adapt to use
	_Rb_tree::_M_assign_unique.
	* include/bits/stl_multiset.h
	(std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
	(std::multiset<>::operator=(initializer_list<>)): Adapt to use
	_Rb_tree::_M_assign_equal.
	* testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
	* testsuite/23_containers/map/allocator/init-list.cc: New.
	* testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
	* testsuite/23_containers/multimap/allocator/copy_assign.cc
	(test03): New.
	* testsuite/23_containers/multimap/allocator/init-list.cc: New.
	* testsuite/23_containers/multimap/allocator/move_assign.cc
	(test03): New.
	* testsuite/23_containers/multiset/allocator/copy_assign.cc
	(test03): New.
	* testsuite/23_containers/multiset/allocator/init-list.cc: New.
	* testsuite/23_containers/multiset/allocator/move_assign.cc
	(test03): New.
	* testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
	* testsuite/23_containers/set/allocator/init-list.cc: New.
	* testsuite/23_containers/set/allocator/move_assign.cc (test03): New.

From-SVN: r215568
2014-09-24 19:55:35 +00:00
Jonathan Wakely
8d6b3c1632 re PR libstdc++/63353 (libstdc++-v3/src/c++11/ios.cc:232: possible typo ?)
PR libstdc++/63353
	* src/c++11/ios.cc (ios_base::_M_swap): Fix typo.

From-SVN: r215549
2014-09-24 10:40:10 +01:00
Jonathan Wakely
48e968a720 gnu.ver: Adjust basic_ostream exports.
* config/abi/pre/gnu.ver: Adjust basic_ostream exports.
	* include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
	to ostream constructor.
	* include/std/ostream (basic_ostream(basic_iostream*)): Change to take
	parameter by reference, to avoid ambiguity.
	* testsuite/27_io/basic_ostream/cons/char/null.cc: New.

From-SVN: r215510
2014-09-23 14:17:42 +01:00
Jason Merrill
2eac08538a Makefile.in (check-parallel-%): Add @.
gcc/
	* Makefile.in (check-parallel-%): Add @.
libstdc++-v3/
	* testsuite/Makefile.am (%/site.exp): Add @.
	(check-DEJAGNU): Likewise.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r215474
2014-09-22 12:33:35 -04:00
Jonathan Wakely
7666d649f8 Include <bits/uses_allocator.h> in <stack> and <queue>.
* include/bits/stl_queue.h: Include missing header.
	* include/bits/stl_stack.h: Likewise.
	* testsuite/23_containers/priority_queue/requirements/
	uses_allocator.cc: New.
	* testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
	* testsuite/23_containers/stack/requirements/uses_allocator.cc: New.

From-SVN: r215470
2014-09-22 17:01:53 +01:00
Jonathan Wakely
bd0a790ab6 status_cxx2011.xml: Update C++11 status.
* doc/xml/manual/status_cxx2011.xml: Update C++11 status.
	* doc/xml/manual/status_cxx2014.xml: Update TS status.
	* doc/html/manual/status.html: Regenerate.

From-SVN: r215468
2014-09-22 16:25:37 +01:00
Jonathan Wakely
726d31362a mutex (try_lock): Do not swallow exceptions.
* include/std/mutex (try_lock): Do not swallow exceptions.
	* testsuite/30_threads/try_lock/4.cc: Fix test.

From-SVN: r215467
2014-09-22 15:54:35 +01:00
Jonathan Wakely
ed26fe9e4a Fix ChangeLog date in my last commit.
From-SVN: r215466
2014-09-22 15:21:43 +01:00
Jonathan Wakely
9b81754858 Make streams movable and swappable.
PR libstdc++/54316
	PR libstdc++/53626
	* config/abi/pre/gnu.ver: Add new exports.
	* config/io/basic_file_stdio.h (__basic_file): Support moving and
	swapping.
	* include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
	Likewise.
	* include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
	Likewise.
	* include/bits/fstream.tcc (basic_filebuf): Likewise.
	* include/bits/move.h (__exchange): Define for C++11 mode.
	* include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
	swapping.
	* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
	* include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
	basic_fstream): Likewise.
	* include/std/ios: Remove whitespace.
	* include/std/istream (basic_istream, basic_iostream): Support moving
	and swapping.
	* include/std/ostream (basic_ostream): Likewise.
	* include/std/sstream (basic_stringbuf, basic_istringstream,
	basic_ostringstream, basic_stringstream): Likewise.
	* include/std/streambuf (basic_streambuf): Do not default copy
	constructor and assignment on first declaration.
	* include/std/utility (exchange): Forward to __exchange.
	* testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
	* src/c++11/Makefile.am: Add stream-related files.
	* src/c++11/Makefile.in: Regenerate.
	* src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
	New file for explicit instantiation definitions.
	* src/c++11/ios.cc: Move from src/c++98 to here.
	(ios_base::_M_move, ios_base::_M_swap): Define.
	* src/c++11/ios-inst.cc: Move from src/c++98 to here.
	* src/c++11/iostream-inst.cc: Likewise.
	* src/c++11/istream-inst.cc: Likewise.
	* src/c++11/ostream-inst.cc: Likewise.
	* src/c++11/sstream-inst.cc: Likewise.
	* src/c++11/streambuf-inst.cc: Likewise.
	* src/c++98/Makefile.am: Remove stream-related files.
	* src/c++98/Makefile.in: Regenerate.
	* src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
	instantiations.
	* src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
	* src/c++98/ios-inst.cc: Move to src/c++11/.
	* src/c++98/ios.cc: Move to src/c++11/.
	* src/c++98/iostream-inst.cc: Likewise.
	* src/c++98/istream-inst.cc: Likewise.
	* src/c++98/ostream-inst.cc: Likewise.
	* src/c++98/sstream-inst.cc: Likewise.
	* src/c++98/streambuf-inst.cc: Likewise.
	* testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
	* testsuite/27_io/basic_fstream/cons/move.cc: New.
	* testsuite/27_io/basic_fstream/assign/1.cc: New.
	* testsuite/27_io/basic_ifstream/cons/move.cc: New.
	* testsuite/27_io/basic_ifstream/assign/1.cc: New.
	* testsuite/27_io/basic_istringstream/assign/1.cc: New.
	* testsuite/27_io/basic_istringstream/cons/move.cc: New.
	* testsuite/27_io/basic_ofstream/cons/move.cc: New.
	* testsuite/27_io/basic_ofstream/assign/1.cc: New.
	* testsuite/27_io/basic_ostringstream/assign/1.cc: New.
	* testsuite/27_io/basic_ostringstream/cons/move.cc: New.
	* testsuite/27_io/basic_stringstream/assign/1.cc: New.
	* testsuite/27_io/basic_stringstream/cons/move.cc: New.

From-SVN: r215463
2014-09-22 14:34:09 +01:00
Jason Merrill
4666e1fb92 dyncast.cc (__dynamic_cast): Handle mid-destruction dynamic_cast more gracefully.
* libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
	dynamic_cast more gracefully.

From-SVN: r215350
2014-09-18 08:34:43 -04:00
Jakub Jelinek
717c478953 Makefile.in (dg_target_exps): Remove.
gcc/
	* Makefile.in (dg_target_exps): Remove.
	(check_gcc_parallelize): Change to just an upper bound number.
	(check-%-subtargets): Always print the non-parallelized goals.
	(check_p_vars, check_p_comma, check_p_subwork): Remove.
	(check_p_count, check_p_numbers0, check_p_numbers1, check_p_numbers2,
	check_p_numbers3, check_p_numbers4, check_p_numbers5,
	check_p_numbers6): New variables.
	(check_p_numbers): Set to sequence from 1 to 9999.
	(check_p_subdirs): Set to sequence from 1 to minimum of
	$(check_p_count) and either GCC_TEST_PARALLEL_SLOTS env var if set,
	or 128.
	(check-%, check-parallel-%): Rewritten so that for parallelized
	testing each job runs all the *.exp files, with
	GCC_RUNTEST_PARALLELIZE_DIR set in environment.
gcc/go/
	* Make-lang.in (check_go_parallelize): Change to just an upper bound
	number.
gcc/fortran/
	* Make-lang.in (check_gfortran_parallelize): Change to just an upper
	bound number.
gcc/cp/
	* Make-lang.in (check_g++_parallelize): Change to just an upper bound
	number.
gcc/objc/
	* Make-lang.in (check_objc_parallelize): Change to just an upper
	bound number.
gcc/ada/
	* gcc-interface/Make-lang.in (check_acats_numbers0,
	check_acats_numbers1, check_acats_numbers2, check_acats_numbers3,
	check_acats_numbers4, check_acats_numbers5, check_acats_numbers6,
	check_acats_numbers, check_acats_subdirs): New variables.
	(check_acats_targets): Use $(check_acats_subdirs).
	(check-acats, check-acats%): Rewritten so that for parallelized
	testing each job runs all the chapters files, with
	GCC_RUNTEST_PARALLELIZE_DIR set in environment.  Prepare the support
	directory sequentially and share it.
	(check-acats-subtargets): Always print just check-acats.
gcc/testsuite/
	* lib/gcc-defs.exp (gcc_parallel_test_run_p,
	gcc_parallel_test_enable): New procedures.  If
	GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
	runtest_file_p to invoke also gcc_parallel_test_run_p.
	* g++.dg/guality/guality.exp (check_guality): Save/restore
	test_counts array around the body of the procedure.
	* gcc.dg/guality/guality.exp (check_guality): Likewise.
	* g++.dg/plugin/plugin.exp: Run all the tests serially
	by the first parallel runtest encountering it.
	* gcc.dg/plugin/plugin.exp: Likewise.
	* gcc.misc-tests/matrix1.exp: Likewise.
	* gcc.misc-tests/dhry.exp: Likewise.
	* gcc.misc-tests/acker1.exp: Likewise.
	* gcc.misc-tests/linkage.exp: Likewise.
	* gcc.misc-tests/mg.exp: Likewise.
	* gcc.misc-tests/mg-2.exp: Likewise.
	* gcc.misc-tests/sort2.exp: Likewise.
	* gcc.misc-tests/sieve.exp: Likewise.
	* gcc.misc-tests/options.exp: Likewise.
	* gcc.misc-tests/help.exp: Likewise.
	* go.test/go-test.exp (go-gc-tests): Use
	gcc_parallel_test_enable {0, 1} around all handling of
	each test.
	* objc.dg/gnu-encoding/gnu-encoding.exp: Likewise.
	* ada/acats/run_all.sh: Parallelize using mkdir inside of
	a shared directory.  Avoid forking and expr uses if
	shell supports $(()).
libstdc++-v3/
	* testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
	check_p_numbers2, check_p_numbers3, check_p_numbers4,
	check_p_numbers5, check_p_numbers6, check_p_numbers,
	check_p_subdirs): New variables.
	(check_DEJAGNU_normal_targets): Use check_p_subdirs.
	(check-DEJAGNU): Rewritten so that for parallelized
	testing each job runs all the *.exp files, with
	GCC_RUNTEST_PARALLELIZE_DIR set in environment.
	* testsuite/Makefile.in: Regenerated.
	* testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
	gcc_parallel_test_enable): New procedures.  If
	GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
	runtest_file_p to invoke also gcc_parallel_test_run_p.
	* testsuite/libstdc++-abi/abi.exp: Run all the tests serially
	by the first parallel runtest encountering it.  Fix up path
	of the extract_symvers script.
	* testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
	serially by the first parallel runtest encountering it.  Run
	dg-finish even in case of error.

From-SVN: r215273
2014-09-15 20:23:36 +02:00
Jonathan Wakely
4564acc36f regex.h (basic_regex): Rename _Ch_typeraits template parameters to _Ch_traits.
* include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
	parameters to _Ch_traits.

From-SVN: r215261
2014-09-15 11:57:51 +01:00
Jonathan Wakely
b6f866946b deque (__gnu_debug::deque): Make base class C++11 allocator aware.
* include/debug/deque (__gnu_debug::deque): Make base class C++11
	allocator aware.

From-SVN: r215223
2014-09-12 15:06:50 +01:00
Jonathan Wakely
bc5022d011 re PR libstdc++/59603 (std::random_shuffle tries to swap element with itself)
PR libstdc++/59603
	* include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
	* testsuite/25_algorithms/random_shuffle/59603.cc: New.

From-SVN: r215219
2014-09-12 14:30:35 +01:00
Jonathan Wakely
8aed2f2f63 re PR libstdc++/63219 (Superfluous template parameter in match_result::format overload)
PR libstdc++/63219
	* include/bits/regex.h (match_results::format): Remove stray template
	parameter.
	* include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
	Remove parameter name to avoid -Wunused-parameter warning.
	* include/bits/regex_executor.h (_State_info::_State_info): Reorder
	mem-initializers to avoid -Wreorder warning.
	* include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
	Remove parameter name to avoid -Wunused-parameter warning.
	* include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
	to avoid -Wempty-body warning when not in debug mode.

From-SVN: r215160
2014-09-11 11:01:20 +01:00
Siva Chandra Reddy
e9e08827bf hook.in: Load the xmethods.
2014-09-10  Siva Chandra Reddy  <sivachandra@google.com>

	* python/hook.in: Load the xmethods.
	* python/Makefile.am (nobase_python_DATA): Add xmethods.py.
	* python/Makefile.in: Regenerated.
	* python/libstdcxx/v6/xmethods.py: New file.
	* testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
	function.
	(gdb-test): New optional argument LOAD_XMETHODS.  Load xmethods
	python script if LOAD_XMETHODS is true.
	* testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
	* testsuite/libstdc++-xmethods/vector.cc: New file.
	* testsuite/libstdc++-xmethods/xmethods.exp: New file.

From-SVN: r215128
2014-09-10 14:18:04 +01:00
Tony Wang
0876bdf57b re PR libgcc/56846 (_Unwind_Backtrace on ARM and noexcept)
2014-09-10  Tony Wang  <tony.wang@arm.com>

    libstdc++-v3/
    PR target/56846
    * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
    Return with CONTINUE_UNWINDING when the state pattern
    contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND

From-SVN: r215101
2014-09-10 04:45:32 +00:00
Jonathan Wakely
fd18c76ac8 Make std::deque meet C++11 allocator requirements.
* include/bits/deque.tcc (deque::operator=(const deque&)): Handle
	allocator propagation.
	(deque::emplace_front, deque::emplace_back): Use allocator traits.
	(deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
	(deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
	* include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
	(_Deque_iterator): Handle allocators with custom pointers.
	(_Deque_base): Likewise. Use allocator traits.
	(deque): Likewise. Add allocator-extended constructors.
	(deque::_M_move_assign1, deque::_M_move_assign2): Implement move
	assignment via tag dispatching.
	(deque::_M_replace_map): Replace existing data.
	* include/debug/deque (deque): Add allocator-extended constructors.
	* include/profile/deque (deque): Likewise.
	* testsuite/23_containers/deque/allocator/copy.cc: New.
	* testsuite/23_containers/deque/allocator/copy_assign.cc: New.
	* testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
	* testsuite/23_containers/deque/allocator/minimal.cc: New.
	* testsuite/23_containers/deque/allocator/move.cc: New.
	* testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
	* testsuite/23_containers/deque/allocator/move_assign.cc: New.
	* testsuite/23_containers/deque/allocator/noexcept.cc: New.
	* testsuite/23_containers/deque/allocator/swap.cc: New.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Likewise.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/52591.cc: Test both the propagating
	and always-equal cases.

From-SVN: r215090
2014-09-09 18:29:32 +01:00
François Dumont
da27f5567c hashtable_policy.h (_Prime_rehash_policy): Constructor noexcept qualified.
2014-09-06  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
	noexcept qualified.
	(_Hash_code_base<>): All specialization default constructible if
	possible.
	(_Hashtable_base<>): Likewise.
	* include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
	* include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
	implementation defaulted.
	(unordered_multimap<>::unordered_multimap()): Likewise.
	* include/bits/unordered_set.h
	(unordered_set<>::unordered_set()): Likewise.
	(unordered_multiset<>::unordered_multiset()): Likewise.
	* include/debug/unordered_map: Likewise.
	* include/debug/unordered_set: Likewise.
	* testsuite/23_containers/unordered_map/allocator/noexcept.cc
	(test04()): New.
	* testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
	(test04()): New.
	* testsuite/23_containers/unordered_set/allocator/noexcept.cc
	(test04()): New.
	* testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
	(test04()): New.

From-SVN: r214986
2014-09-06 07:38:48 +00:00
John David Anglin
79c702321e baseline_symbols.txt: Update.
* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.

From-SVN: r214753
2014-08-30 15:10:20 +00:00
Jonathan Wakely
fa794dc63e complex (complex): Define copy constructor and assignment operator as defaulted.
* include/std/complex (complex): Define copy constructor and
	assignment operator as defaulted. Improve Doxygen comments.

From-SVN: r214736
2014-08-29 17:28:19 +01:00
Jonathan Wakely
7d594ac83d *: Fix incorrect standard references in comments.
* testsuite/ext/random/*: Fix incorrect standard references in
	comments.

From-SVN: r214681
2014-08-28 16:46:02 +01:00
Jonathan Wakely
3cd4f356e9 re PR libstdc++/62159 (Missing headers for freestanding implementation)
PR libstdc++/62159
	* include/Makefile.am (install-freestanding-headers): Add missing
	C++11 headers.
	* include/Makefile.in: Regenerate.

From-SVN: r214580
2014-08-27 18:33:42 +01:00
Jonathan Wakely
7e51aabc29 Whitespace fixes in libstdc++-v3/ChangeLog
From-SVN: r214501
2014-08-26 12:44:39 +01:00
Tony Wang
31879c2cc7 62154.cc: Disable when the target doesn't provide atomic builtins.
2014-08-21  Tony Wang  <tony.wang@arm.com>

    libstdc++-v3/
    * testsuite/18_support/nested_exception/62154.cc: Disable when the
    target doesn't provide atomic builtins.

From-SVN: r214261
2014-08-21 09:11:00 +00:00
Yaakov Selkowitz
1ed3ba0549 os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32): Define.
2014-08-19  Yaakov Selkowitz  <yselkowi@redhat.com>
	Kai Tietz  <ktietz@redhat.com>

	* config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
	Define.
	* config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
	Ditto.
	* libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
	#include <windows.h>.
	(struct elt): Add dll member.
	(run): Decrement dll refcount.
	(__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.


Co-Authored-By: Kai Tietz <ktietz@redhat.com>

From-SVN: r214163
2014-08-19 17:25:12 +02:00
Jonathan Wakely
2ce8cb99a6 re PR libstdc++/62154 (std::throw_with_nested should not require a polymorphic type)
PR libstdc++/62154
	* libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
	Rewrite to conform to C++11 requirements.
	* testsuite/18_support/nested_exception/62154.cc: New.

From-SVN: r214025
2014-08-15 16:22:44 +01:00
Matthias Klose
e8af7616a9 requirements: Remove empty directory.
2014-08-14  Matthias Klose  <doko@ubuntu.com>

        * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
        Remove empty directory.

From-SVN: r213958
2014-08-14 11:37:20 +00:00
Paolo Carlini
215acd2bae parser.c (cp_parser_init_declarator): Remove redundant check of decl_specifiers->type.
/gcc/cp
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* parser.c (cp_parser_init_declarator): Remove redundant check of
	decl_specifiers->type.

/gcc/testsuite
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/alias-decl-4.C: Adjust for parser change.
	* g++.dg/cpp0x/decltype2.C: Likewise.
	* g++.dg/cpp0x/decltype3.C: Likewise.
	* g++.dg/cpp0x/pr60249.C: Likewise.
	* g++.dg/cpp0x/variadic-ex10.C: Likewise.
	* g++.dg/cpp0x/variadic-ex14.C: Likewise.
	* g++.dg/cpp0x/variadic2.C: Likewise.
	* g++.dg/cpp0x/variadic74.C: Likewise.
	* g++.dg/parse/error10.C: Likewise.
	* g++.dg/parse/error15.C: Likewise.
	* g++.dg/parse/error2.C: Likewise.
	* g++.dg/template/crash106.C: Likewise.
	* g++.dg/template/crash89.C: Likewise.
	* g++.dg/template/nontype7.C: Likewise.
	* g++.dg/template/void3.C: Likewise.
	* g++.dg/template/void7.C: Likewise.

/libstdc++-v3
2014-08-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/26_numerics/random/linear_congruential_engine/
	requirements/non_uint_neg.cc: Adjust for parser change.
	* testsuite/tr1/5_numerical_facilities/random/linear_congruential/
	requirements/non_uint_neg.cc: Likewise.

From-SVN: r213952
2014-08-14 09:15:11 +00:00
Jonathan Wakely
c6b3f349f5 re PR libstdc++/61841 (broken std::thread on Hurd)
PR libstdc++/61841
	* include/std/thread (thread::_M_start_thread): Declare new overload.
	(thread::thread<_Callable, _Args...>): Call new overload with an
	explicit reference to pthread_create.
	* src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
	* config/abi/pre/gnu.ver: Export new function.

From-SVN: r213922
2014-08-13 19:40:10 +01:00
Sylvestre Ledru
af1e01525f Fix the date ...
From-SVN: r213916
2014-08-13 16:56:15 +00:00
Sylvestre Ledru
07ec100911 profiler_hash_func.h: Fix a comment typo
2014-08-12  Sylvestre Ledru  <sylvestre@debian.org>

        * include/profile/impl/profiler_hash_func.h: Fix a comment typo

From-SVN: r213914
2014-08-13 16:28:39 +00:00