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
Paolo Carlini
429e4fdebf
2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
...
* Fix thinko in the last commit.
From-SVN: r213908
2014-08-13 11:56:45 +00:00
Paolo Carlini
a3ee88517c
re PR libstdc++/62118 (cases under libstdc++-v3/testsuite/ext/ failed on aarch64/arm)
...
2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/62118
* include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
From-SVN: r213906
2014-08-13 11:24:35 +00:00
Jonathan Wakely
caff45a635
* include/bits/basic_string.h (getline): Declare inline.
...
From-SVN: r213873
2014-08-12 16:48:23 +01:00
Jonathan Wakely
191736612d
basic_string.h (getline): Qualify call to prevent ADL and add overloads for rvalue streams.
...
* include/bits/basic_string.h (getline): Qualify call to prevent ADL
and add overloads for rvalue streams.
* testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
New.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
New.
From-SVN: r213869
2014-08-12 16:19:53 +01:00
Ulrich Drepper
83a4216dd2
random.tcc (uniform_on_sphere_helper): Define.
...
* include/ext/random.tcc (uniform_on_sphere_helper): Define.
(uniform_on_sphere_distribution::operator()): Use the new helper
class for the implementation.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
equal.cc: Remove bogus part of comment.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
inequal.cc: Likewise.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
serialize.cc: Add check to verify result of serialzation and
deserialization.
* testsuite/ext/random/uniform_on_sphere_distribution/operators/
generate.cc: New file.
From-SVN: r213779
2014-08-09 17:56:57 +00:00
Paolo Carlini
42ee80b920
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
...
* Adjust date.
From-SVN: r213777
2014-08-09 09:00:34 +00:00
Paolo Carlini
6a6bdc3d09
invoke.texi ([Wnarrowing]): Update for non-constants in C++11.
...
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* doc/invoke.texi ([Wnarrowing]): Update for non-constants in C++11.
gcc/cp
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* typeck2.c (check_narrowing): Add tsubst_flags_t parameter, change
return type to bool; in C++11 for constants give errors, not pedwarns.
* cp-tree.h (check_narrowing): Adjust declaration.
* call.c (convert_like_real): Update calls.
* semantics.c (finish_compound_literal): Likewise.
gcc/testsuite
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/Wnarrowing1.C: Adjust for errors.
* g++.dg/cpp0x/enum29.C: Adjust.
/libstdc++-v3
2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
From-SVN: r213776
2014-08-09 08:58:33 +00:00
François Dumont
013078982d
re PR libstdc++/61667 (setting max_load_factor of unordered_map cause buckets shrink)
...
2014-08-09 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/61667
* include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
_M_need_rehash to initialize the rehash policy and check if a rehash is
needed.
* testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
From-SVN: r213775
2014-08-09 08:00:59 +00:00
Jonathan Wakely
db0b7db338
future (__location_invariant): Move specializations after preprocessor condition.
...
* include/std/future (__location_invariant): Move specializations
after preprocessor condition.
From-SVN: r213744
2014-08-07 23:54:53 +01:00
Jonathan Wakely
4e48c10968
future (_State_baseV2::_M_set_result): Pass pointers to _M_do_set.
...
* include/std/future (_State_baseV2::_M_set_result): Pass pointers to
_M_do_set.
(_State_baseV2::_M_do_set): Change parameters to pointers.
(_State_baseV2::_Setter): Change _M_arg from reference to pointer.
(_State_baseV2::__setter): Initialize _Setter with pointers.
(_State_baseV2::__setter(promise<void>*)): Remove overload.
(promise::set_value, promise::set_exception): Pass setter directly
to _M_set_result.
(_State_baseV2::_Task_setter): Add template parameter for callable
type and replace std::function member with pointer to that type.
Change _M_result member from reference to pointer.
(_State_baseV2::_S_task_setter): Change parameter to lvalue reference
and initialize _Task_setter with pointers.
(__location_invariant): Specialize for _Setter and _Task_setter.
From-SVN: r213737
2014-08-07 21:13:52 +01:00
Jonathan Wakely
d0ef19a0b2
stl_list.h (_List_base::_List_base(_List_base&&)): Optimize.
...
* include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
Optimize.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r213716
2014-08-07 18:25:13 +01:00
Paolo Carlini
2821a748d1
re PR c++/15339 ([DR217] Adding default arguments to function templates in redeclarations should be forbidden)
...
2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/15339
* testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
From-SVN: r213520
2014-08-02 21:38:34 +00:00
Zifei Tong
a7f930e7c3
atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add _GLIBCXX_ prefix to macro.
...
2014-08-01 Zifei Tong <zifeitong@gmail.com>
* libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
_GLIBCXX_ prefix to macro.
From-SVN: r213504
2014-08-01 20:45:56 +01:00
Jonathan Wakely
3e5eda5b4d
* python/libstdcxx/v6/printers.py
...
(SingleObjContainerPrinter._contained): Use compatibility mixin.
From-SVN: r213227
2014-07-29 22:35:57 +01:00
François Dumont
5c7c5f9a88
2014-07-29 François Dumont <fdumont@gcc.gnu.org>
...
* testsuite/util/testsuite_allocator.h
(tracker_allocator_counter::allocate): Remove new invocation, only
collect information.
(tracker_allocator_counter::deallocate): Remove delete invocation, only
collect information.
(check_inconsistent_alloc_value_type): New.
(tracker_allocator): Transform as a facade for any allocator type.
(uneq_allocator): Likewise.
(propagating_allocator): Likewise.
* testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
explicitly non propagating allocator.
* testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
* testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
* testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
* testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
* testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
From-SVN: r213224
2014-07-29 19:47:19 +00:00
Jonathan Wakely
f4081d133f
re PR libstdc++/61947 (Ambiguous calls when constructing std::tuple)
...
PR libstdc++/61947
* include/std/tuple (_Head_base): Use allocator_arg_t parameters to
disambiguate unary constructors.
(_Tuple_impl): Pass allocator_arg_t arguments.
* testsuite/20_util/tuple/61947.cc: New.
* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
From-SVN: r213221
2014-07-29 18:30:34 +01:00
Jonathan Wakely
aec20dcf39
re PR libstdc++/61946 (rope construction, passing allocator referenct without const)
...
PR libstdc++/61946
* include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
const allocator_type&)): Pass non-const allocator to
_S_new_RopeFunction.
* testsuite/ext/rope/61946.cc: New.
From-SVN: r213220
2014-07-29 18:30:25 +01:00
Ed Smith-Rowland
1c4ff014fe
PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
...
2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
* include/bits/random.h (_Adaptor): static_assert for non floating-point
result type.
* include/bits/random.tcc (generate_canonical): Ditto.
* include/ext/random.tcc (hypergeometric_distribution::operator()):
Use double as a rng result type.
* testsuite/26_numerics/random/pr60037-neg.cc: New.
* testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
From-SVN: r213207
2014-07-29 14:56:45 +00:00
Uros Bizjak
a3a2efc10e
baseline_symbols.txt: Update.
...
* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
From-SVN: r213040
2014-07-25 08:47:47 +02:00
Ed Smith-Rowland
0a9f0ecb4c
string_view: Make the literal operators constexpr like the ctors they call.
...
2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
* include/experimental/string_view: Make the literal operators
constexpr like the ctors they call.
From-SVN: r213037
2014-07-25 03:47:46 +00:00
H.J. Lu
a6eb46e841
Add a blank line
...
From-SVN: r212964
2014-07-23 15:17:32 -07:00
H.J. Lu
2e1e91f126
Update x32 baseline_symbols.txt
...
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
From-SVN: r212963
2014-07-23 15:16:52 -07:00
Jonathan Wakely
da03858bf0
printers.py (StdExpAnyPrinter): Convert type to string instead of using gdb.Type.name attribute.
...
* python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
to string instead of using gdb.Type.name attribute.
From-SVN: r212929
2014-07-23 11:45:17 +01:00
Jonathan Wakely
773162d72a
acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with AC_MSG_CHECKING.
...
* acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
AC_MSG_CHECKING.
From-SVN: r212848
2014-07-19 18:56:09 +01:00
Jonathan Wakely
faf7f829a8
re PR libstdc++/61835 (Invalid comment on pretty printers breaks gdb)
...
PR libstdc++/61835
* python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
raw string.
(SingleObjContainerPrinter): Check if type printers are in use.
From-SVN: r212822
2014-07-18 16:56:00 +01:00
Paolo Carlini
026ae646e7
random: Minor formatting and cosmetic tweaks.
...
2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/ext/random: Minor formatting and cosmetic tweaks.
(uniform_on_sphere_distribution<>::operator==
(const uniform_on_sphere_distribution&,
const uniform_on_sphere_distribution&)): Compare the _M_nds.
(uniform_on_sphere_distribution<>::reset): Reset _M_nd.
(operator!=(const uniform_on_sphere_distribution&,
const uniform_on_sphere_distribution&)): Adjust.
* include/ext/random.tcc: Minor cosmetc tweaks.
From-SVN: r212674
2014-07-16 15:47:26 +00:00
Jonathan Wakely
6f440cceb4
printers.py (SingleObjContainerPrinter): New base class for experimental::any and experimental::optional printers.
...
* python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
base class for experimental::any and experimental::optional printers.
(StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
New printers for Fundamentals TS types.
* testsuite/libstdc++-prettyprinters/libfundts.cc: New.
From-SVN: r212556
2014-07-15 13:00:18 +01:00
Jonathan Wakely
077aa95ec7
printers.py (TemplateTypePrinter): Add type printer for class templates.
...
* python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
printer for class templates.
(register_type_printers): Use TemplateTypePrinter for containers
and other class templates with default template arguments.
* testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
From-SVN: r212555
2014-07-15 13:00:12 +01:00
Tim Shen
4228f9328c
re PR libstdc++/61720 (std::regex_search matches incorrectly)
...
PR libstdc++/61720
* include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
Clear match queue for next use.
* testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
From-SVN: r212539
2014-07-15 04:28:51 +00:00
Ulrich Drepper
b40d9361f9
random.tcc: Unfortunately more fixes for operator>> and operator<< for...
...
* include/ext/random.tcc: Unfortunately more fixes for
operator>> and operator<< for uniform_on_sphere_distribution.
From-SVN: r212517
2014-07-14 12:09:30 +00:00
Ulrich Drepper
5c8efaf2fb
random.tcc: Fix operator>> and operator<< for uniform_on_sphere_distribution.
...
* include/ext/random.tcc: Fix operator>> and operator<< for
uniform_on_sphere_distribution.
From-SVN: r212496
2014-07-13 16:43:01 +00:00
Ulrich Drepper
863a2c7ecc
random: Add uniform_on_sphere_distribution definition.
...
2014-07-12 Ulrich Drepper <drepper@gmail.com>
* include/ext/random: Add uniform_on_sphere_distribution definition.
* include/ext/random.tcc: Add out-of-band member function definitions
for uniform_on_sphere_distribution.
* testsuite/ext/random/uniform_on_sphere_distribution/
cons/default.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/equal.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/inequal.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/serialize.cc: New file.
From-SVN: r212492
2014-07-13 11:07:44 +00:00
Edward Smith-Rowland
8daac7749f
Add the logistic_distribution as an extension.
...
2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
Add the logistic_distribution as an extension.
* include/ext/random: Add the logistic_distribution.
* include/ext/random.tcc: Add the logistic_distribution.
* testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
* testsuite/ext/random/logistic_distribution/cons/default.cc: New.
* testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
New.
* testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
* testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
* testsuite/ext/random/logistic_distribution/operators/serialize.cc:
New.
From-SVN: r212476
2014-07-12 01:32:20 +00:00
Samuel Bronson
f4da031c41
gdb-test.exp (gdb-test): Turn off GDB's auto-load, list loaded libs.
...
2014-07-11 Samuel Bronson <naesten@gmail.com>
* testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
list loaded libs.
From-SVN: r212459
2014-07-11 16:32:29 +01:00
Samuel Bronson
7cd41cda09
libstdc++.exp (libstdc++_init): Set $GCC_COLORS="" instead of insisting that GCC understand...
...
2014-07-11 Samuel Bronson <naesten@gmail.com>
* testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
instead of insisting that GCC understand -fdiagnostics-color=never
From-SVN: r212458
2014-07-11 16:32:14 +01:00
Samuel Bronson
cdd1ba6210
re PR libstdc++/58962 (Pretty printers use obsolete Python syntax)
...
2014-07-11 Samuel Bronson <naesten@gmail.com>
Matthias Klose <doko@ubuntu.com>
PR libstdc++/58962
* python/libstdcxx/v6/printers.py: Port to Python 2+3
(imap): New compat function.
(izip): Likewise.
(Iterator): New mixin to allow writing iterators in Python 3 style
regardless of which version we're running on.
[Python3] (long) New compat alias for "int".
* testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
Co-Authored-By: Matthias Klose <doko@ubuntu.com>
From-SVN: r212453
2014-07-11 14:43:07 +01:00
Jonathan Wakely
7757d79bfc
any (any::_Manager_alloc::_Data): Reorder tuple members to simplify pretty printing.
...
* include/experimental/any (any::_Manager_alloc::_Data): Reorder
tuple members to simplify pretty printing.
(any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
construction.
* testsuite/experimental/any/cons/4.cc: New.
From-SVN: r212435
2014-07-10 19:08:35 +01:00
Jason Merrill
a6ea72bf82
re PR libstdc++/61728 (lost symbol FUNC:_ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj@@CXXABI_1.3)
...
PR libstdc++/61728
* libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
* libsupc++/tinfo.h: Not here.
From-SVN: r212413
2014-07-09 18:21:49 -04:00
Jonathan Wakely
b3771d3f6f
allocated_ptr.h (__allocated_ptr::operator=): Add missing return.
...
* include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
missing return.
* include/experimental/any: Remove unused header.
* include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
* testsuite/util/testsuite_regex.h: Move include guard.
From-SVN: r212360
2014-07-08 14:22:14 +01:00
Tim Shen
05ae5af25a
* ChangeLog: Correct the PR id from 61061 to 61601.
...
From-SVN: r212187
2014-07-01 03:18:17 +00:00
Tim Shen
5bcb66dffa
re PR testsuite/61061 (FAIL: g++.dg/inherit/covariant7.C)
...
PR libstdc++/61061
PR libstdc++/61582
* include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
a NFA state limit. If it's exceeded, regex_constants::error_space
will be throwed.
* include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
map (which is sparse) instead of vector. This reduce n times clones'
cost from O(n^2) to O(n).
* include/std/regex: Add map dependency.
* testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
testcase.
From-SVN: r212185
2014-07-01 03:05:45 +00:00
Tim Shen
ad9ec7b3c5
re PR libstdc++/61424 (std::regex matches right to left, not leftmost longest)
...
PR libstdc++/61424
* include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
not just regex containing back-references.
* include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
exchange _M_next and _M_alt for alternative operator,
making matching from left to right.
* include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
Add position tracking fom DFS.
* include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
_Executor<>::_M_dfs): Likewise.
* include/bits/regex_scanner.h: Remove unused enum entry.
* testsuite/28_regex/algorithms/regex_search/61424.cc: New
testcase from PR.
From-SVN: r212184
2014-07-01 02:10:31 +00:00
Jason Merrill
5796bf3422
re PR ipa/61659 (Extra undefined symbol because of devirtualization)
...
PR c++/61659
PR lto/53808
gcc/cp
* decl2.c (maybe_emit_vtables): Mark all vtable entries if
devirtualizing.
* init.c (build_vtbl_address): Don't mark destructor.
* class.c (finish_struct_1): Add all classes to keyed_classes
if devirtualizing.
libstdc++-v3/
* libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
is pure, not inline.
From-SVN: r212174
2014-06-30 16:20:55 -04:00
Paolo Carlini
de35da36f6
revert: [multiple changes]
...
2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
Revert:
2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR libstdc++/61536
* config/abi/pre/gnu.ver: Adjust for out of line comparisons.
2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
* config/abi/pre/gnu.ver: Tighten some patterns; tidy.
From-SVN: r212104
2014-06-28 15:53:30 +00:00
Paolo Carlini
8274b28187
2014-06-27 Paolo Carlini <paolo.carlini@oracle.com>
...
* Revert r212046 and r212054.
From-SVN: r212085
2014-06-27 20:03:26 +00:00
François Dumont
b3fb198ded
2014-06-26 François Dumont <fdumont@gcc.gnu.org>
...
* testsuite/util/testsuite_allocator.h
(tracker_allocator_counter::allocate): Remove new invocation, only
collect information.
(tracker_allocator_counter::deallocate): Remove delete invocation, only
collect information.
(check_inconsistent_alloc_value_type): New.
(tracker_allocator): Transform as a facade for any allocator type.
(uneq_allocator): Likewise.
(propagating_allocator): Likewise.
* testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
explicitly non propagating allocator.
* testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
* testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
* testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
* testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
* testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
From-SVN: r212046
2014-06-26 18:42:41 +00:00
Jonathan Wakely
906314419f
shared_ptr_base.h (__shared_ptr::_Deleter): Fix parameter type.
...
* include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
parameter type.
From-SVN: r212027
2014-06-26 13:43:59 +01:00
Jonathan Wakely
6ab0d680e7
alloc.cc: Fix use of test allocator.
...
* testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
allocator.
* testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
From-SVN: r212003
2014-06-26 00:05:58 +01:00
Jonathan Wakely
b925bf594a
Makefile.am: Add new header.
...
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
New RAII utilities for working with allocators.
* include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
__allocator_type typedef and use new __allocated_ptr type.
(_Sp_counted_ptr_inplace): Likewise.
(__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
__allocate_guarded to to simplify exception handling.
* include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
* include/std/future (_Result_alloc::_M_destroy): Likewise.
(_Result_alloc::_S_allocate_result): Likewise.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
* testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
with fancy pointer.
* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
From-SVN: r211996
2014-06-25 21:54:46 +01:00
Jonathan Wakely
484dc5996f
alloc_traits.h (__alloc_rebind): Define alias template.
...
* include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
* include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
* include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
Likewise.
* include/ext/alloc_traits.h: Fix comment.
From-SVN: r211995
2014-06-25 21:54:34 +01:00
Jonathan Wakely
3fa591d4b4
functexcept.h (__throw_out_of_range_fmt): Change attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
...
* include/bits/functexcept.h (__throw_out_of_range_fmt): Change
attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
* include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
Remove unused typedef.
(time_get::do_get_monthname): Likewise.
* include/bits/stl_tree.h: Add system_header pragma.
* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
redundant const-qualifier.
* include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
instead of _GLIBCXX_USE_CONSTEXPR.
From-SVN: r211951
2014-06-24 16:44:17 +01:00
Jonathan Wakely
7ce56fc845
any (any_v1): Rename namespace to fundamentals_v1.
...
* include/experimental/any (any_v1): Rename namespace to
fundamentals_v1. Change string returned by bad_any_cast::what().
* include/experimental/optional (fundamentals_v1): Add namespace.
* include/experimental/string_view (fundamentals_v1): Likewise.
* testsuite/experimental/any/typedefs.cc: New.
* testsuite/experimental/optional/typedefs.cc: New.
* testsuite/experimental/string_view/typedefs.cc: New.
From-SVN: r211920
2014-06-23 23:12:31 +01:00
Jonathan Wakely
bb85ec6e3a
re PR libstdc++/61532 (make_signed and make_unsigned wchar_t have started failing in the libstdc++ testsuite.)
...
PR libstdc++/61532
* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
apply the signed specifier to wchar_t.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
cv-qualifier and size.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.
From-SVN: r211909
2014-06-23 19:17:03 +01:00
Jonathan Wakely
83387bbd28
parse_numbers.h (_Number_help): Fix divide-by-zero.
...
* include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
* include/std/chrono (_Checked_integral_constant): Allow zero.
* testsuite/20_util/duration/literals/values.cc: Test non-positive
values and digit separators.
From-SVN: r211890
2014-06-23 12:30:32 +01:00
Paolo Carlini
ad4684c22a
Fix libstdc++/61536 - Export out of line typeinfo comparison operators
...
2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR libstdc++/61536
* config/abi/pre/gnu.ver: Adjust for out of line comparisons.
Co-Authored-By: Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
From-SVN: r211774
2014-06-18 09:44:15 +00:00
Jonathan Wakely
fb3bc97798
any (any_cast): Combine duplicate doxygen comments.
...
* include/experimental/any (any_cast): Combine duplicate doxygen
comments.
* include/experimental/string_view (basic_string_view): Update
doxygen comment.
* include/std/bitset (bitset): Move to Doxygen 'utilities' group.
* include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
(dynamic_bitset): Improve Doxygen comments.
* include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
comment.
From-SVN: r211672
2014-06-14 21:43:07 +01:00
Jonathan Wakely
10d43d2fb4
api.xml: Link to more recent API docs.
...
* doc/xml/api.xml: Link to more recent API docs.
* include/bits/allocator.h: Fix link in doxygen comment.
* include/bits/char_traits.h: Likewise.
* include/bits/ios_base.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/unordered_map.h: Likewise.
* include/bits/unordered_set.h: Likewise.
* include/ext/mt_allocator.h: Likewise.
* include/std/fstream: Likewise.
* include/std/iosfwd: Likewise.
* include/std/ostream: Likewise.
* include/std/sstream: Likewise.
* include/std/streambuf: Likewise.
* doc/html/*: Regenerate.
From-SVN: r211671
2014-06-14 21:22:10 +01:00
Jonathan Wakely
0054134919
user.cfg.in (INPUT): Add C++14 headers.
...
* doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
* include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
warnings.
* include/bits/shared_ptr.h (shared_ptr): Likewise.
* include/bits/unordered_map.h (unordered_map, unordered_multimap):
Likewise.
* include/bits/unordered_set.h (unordered_set, unordered_multiset):
Likewise.
* include/parallel/list_partition.h (__parallel::list_partition):
Likewise.
* include/std/iomanip (quoted): Likewise.
* include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
From-SVN: r211670
2014-06-14 17:33:53 +01:00
Jonathan Wakely
e8043fa674
status_cxx2014.xml: Update Fundamentals TS status.
...
* doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* include/experimental/any: New.
* include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
constructor.
* testsuite/experimental/any/assign/1.cc: New.
* testsuite/experimental/any/assign/2.cc: New.
* testsuite/experimental/any/cons/1.cc: New.
* testsuite/experimental/any/cons/2.cc: New.
* testsuite/experimental/any/cons/3.cc: New.
* testsuite/experimental/any/misc/any_cast.cc: New.
* testsuite/experimental/any/misc/any_cast_neg.cc: New.
* testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
* testsuite/experimental/any/misc/swap.cc: New.
* testsuite/experimental/any/modifiers/1.cc: New.
* testsuite/experimental/any/observers/type.cc: New.
From-SVN: r211669
2014-06-14 17:00:56 +01:00