summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/bits
Commit message (Collapse)AuthorAgeFilesLines
* libcpp/emsr2014-10-084-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2014-10-08 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. gcc/c-family/ 2014-10-08 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. libstdc++-v3/ 2014-10-08 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. gcc/testsuite/ 2014-10-08 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215998 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/regex.h (regex_token_iterator::_M_end_of_seq): Addredi2014-10-081-1/+1
| | | | | | const qualifier. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215996 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-10-05 François Dumont <fdumont@gcc.gnu.org>fdumont2014-10-051-1/+1
| | | | | | | | | | PR libstdc++/63456 * include/bits/hashtable.h (_M_uses_single_bucket(__bucket_type*)): Test the parameter. * testsuite/23_containers/unordered_set/63456.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215906 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/63199timshen2014-10-021-14/+30
| | | | | | | | | | * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign, basic_regex::swap): Fix dangling _M_traits reference problem. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215805 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.redi2014-10-011-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215757 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/stl_queue.h: Include missing header.redi2014-10-012-0/+6
| | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215756 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/59603redi2014-10-011-2/+11
| | | | | | | * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping. * testsuite/25_algorithms/random_shuffle/59603.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215754 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/63219redi2014-09-111-1/+1
| | | | | | | * include/bits/regex.h (match_results::format): Remove stray template parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@215161 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from mainline:redi2014-08-261-1/+17
| | | | | | | | | | | | | 2014-08-12 Jonathan Wakely <jwakely@redhat.com> * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@214525 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-08-09 François Dumont <fdumont@gcc.gnu.org>fdumont2014-08-091-4/+4
| | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@213778 138bc75d-0d04-0410-961f-82ee72b054a4
* Backported from mainlineredi2014-08-041-2/+2
| | | | | | | | | 2014-04-15 Jonathan Wakely <jwakely@redhat.com> * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add const to constexpr member functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@213600 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>emsr2014-07-302-0/+5
| | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@213231 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/regex_executor.tcc (_Executor<>::_M_main): Move insteadredi2014-06-031-3/+3
| | | | | | of copying. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@211193 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from mainlineredi2014-06-032-5/+23
| | | | | | | | | | | | | | | 2014-05-20 Tim Shen <timshen91@gmail.com> PR libstdc++/61227 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_character_class): Add negative character class support. * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply): Likewise. * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc: Add more testcases. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@211192 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from mainlineredi2014-06-031-8/+6
| | | | | | | | | | 2014-04-24 Tim Shen <timshen91@gmail.com> * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do _M_alt before _M_next. * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@211191 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from mainlineredi2014-06-031-2/+2
| | | | | | | | | 2014-04-15 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/60734 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@211190 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/61329redi2014-05-271-2/+2
| | | | | | | | * include/bits/regex_automaton.tcc (_State_base::_M_print): Add inline specifier. (_State_base::_M_dot): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@210972 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-05-23 François Dumont <fdumont@gcc.gnu.org>fdumont2014-05-231-47/+99
| | | | | | | | | | | PR libstdc++/61143 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a usable state. * testsuite/23_containers/unordered_set/61143.cc: New. * testsuite/23_containers/unordered_set/modifiers/swap.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@210876 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/61086redi2014-05-073-22/+16
| | | | | | | | | | | | | | | | | | | * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast): Remove. * include/bits/stl_vector.h (vector::insert, vector::erase): Use arithmetic to obtain a mutable iterator from const_iterator. * include/bits/vector.tcc (vector::insert): Likewise. * include/debug/vector (vector::erase): Likewise. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@210163 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/61023redi2014-05-071-0/+1
| | | | | | | | | | | | | * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the comparison function. * testsuite/23_containers/set/cons/61023.cc: New. PR libstdc++/61023 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the comparison function. * testsuite/23_containers/set/cons/61023.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@210158 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/61036redi2014-05-021-1/+1
| | | | | | | | * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)): Check the correct type in the static assertion. * testsuite/20_util/shared_ptr/cons/61036.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch@210014 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/60658redi2014-03-251-2/+2
| | | | | | | | * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()): Use sizeof pointer type not the element type. * testsuite/29_atomics/atomic/60658.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208819 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-03-23 François Dumont <fdumont@gcc.gnu.org>fdumont2014-03-231-10/+5
| | | | | | | | | | | | | * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call to delegated constructor. (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise. (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)): Likewise. (_Hashtable( initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208775 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-03-15 Tim Shen <timshen91@gmail.com>timshen2014-03-155-10/+22
| | | | | | | | | | | * include/bits/regex.h: Add/modify comments. * include/bits/regex_compiler.h: Likewise. * include/bits/regex_executor.h: Likewise. * include/bits/regex_executor.tcc: Likewise. * include/bits/regex_scanner.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208593 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-26 Tim Shen <timshen91@gmail.com>timshen2014-02-261-6/+7
| | | | | | | | | | | * include/bits/regex.tcc (match_results<>::format, regex_replace<>): Update __out after calling std::copy. * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc: Add testcase. * testsuite/28_regex/match_results/format.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208179 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-22 Marc Glisse <marc.glisse@inria.fr>glisse2014-02-221-2/+2
| | | | | | | | | | | | | | | | | | PR libstdc++/60308 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const allocator_type&)): Remove redundant call to _M_initialize_map. (deque::deque(const allocator_type&)): Initialize _Base with a constructor that calls _M_initialize_map. Partial revert: 2013-09-20 Marc Glisse <marc.glisse@inria.fr> PR libstdc++/58338 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to _M_initialize_map. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208041 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/59829redi2014-01-291-2/+19
| | | | | | | | | | | | | | | | | * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr. (vector::_M_data_ptr): New overloaded functions to ensure empty vectors do not dereference the pointer. * testsuite/23_containers/vector/59829.cc: New. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207241 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Doredi2014-01-294-105/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | not use varargs when argument could be non-POD. (__alloctr_rebind_helper): Eliminate static const bool member by using true_type and false_type. (allocator_traits::__allocate_helper): Likewise. (allocator_traits::__construct_helper): Likewise. (allocator_traits::__destroy_helper): Likewise. (allocator_traits::__maxsize_helper): Likewise. (allocator_traits::__select_helper): Likewise. * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise. * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)): Remove redundant condition. * include/bits/stl_vector.h (vector::operator=(const vector&)): Likewise. (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use indirection through __alloc_traits. * include/ext/alloc_traits.h (__allocator_always_compares_equal): Eliminate static const bool members by using true_type and false_type. (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize. * testsuite/util/testsuite_allocator.h (PointerBase): Define. * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc: New. * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207240 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-28 Jonathan Wakely <jwakely@redhat.com>redi2014-01-282-45/+84
| | | | | | | | | | | | | | | | | | | | Kyle Lippincott <spectral@google.com> PR libstdc++/59656 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing constructor and grant friendship to weak_ptr. (weak_ptr::lock()): Use new constructor. * include/bits/shared_ptr_base.h (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function and define specializations. (__shared_count): Add new non-throwing constructor. (__shared_ptr): Add new non-throwing constructor and grant friendship to __weak_ptr. (__weak_ptr::lock()): Use new constructor. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error. * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207180 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/59215redi2014-01-271-1/+1
| | | | | | | | * include/bits/shared_ptr_base.h (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic load. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207147 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/stl_map.h: Remove anachronistic comment.redi2014-01-262-2/+3
| | | | | | | | | | | | * include/bits/stl_multimap.h: Add whitespace. * testsuite/23_containers/map/modifiers/emplace/1.cc: Use -std=gnu++11 instead of -std=c++11. * testsuite/23_containers/map/operators/2.cc: Likewise. * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise. * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise. * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207115 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/59872redi2014-01-235-45/+63
| | | | | | | | | | | | | | | | | * include/bits/stl_map.h (map::operator=(map&&)): Fix comment. * include/bits/stl_multimap.h (multimap::operator=(multimap&&)): Likewise. * include/bits/stl_multiset.h (multiset::operator=(multiset&&)): Likewise. * include/bits/stl_set.h (set::operator=(set&&)): Likewise. * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded functions to perform moving or copying of elements from rvalue tree. (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data. (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise. * testsuite/23_containers/map/59872.cc: New. * testsuite/23_containers/map/56613.cc: Remove duplicate include. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206994 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/58764 (again)redi2014-01-222-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_list.h (list): Make default constructor's exception specification conditional. * include/bits/stl_vector.h (vector): Likewise. * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept to default constructor. * 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. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206946 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/58764redi2014-01-223-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_deque.h (deque::deque(const allocator_type&): Split into separate default constructor and constructor taking allocator. * include/bits/stl_list.h (list::list(const allocator_type&): Likewise. * include/bits/stl_vector.h (vector::vector(const allocator_type&): Likewise. * include/debug/deque (deque::deque(const allocator_type&)): Likewise. * include/debug/list (list::list(const _Allocator&)): Likewise. * include/debug/map.h (map::map(const _Compare&, const _Allocator&)): Likewise. * include/debug/multimap.h (multimap::multimap(const _Compare&, const _Allocator&)): Likewise. * include/debug/set.h (set::set(const _Compare&, const _Allocator&)): Likewise. * include/debug/multiset.h (multiset::multiset(const _Compare&, const _Allocator&)): Likewise. * include/debug/vector (vector::vector(const allocator_type&)): Likewise. * include/profile/deque (deque::deque(const _Allocator&)): Likewise. * include/profile/list (list::list(const _Allocator&)): Likewise. * include/profile/map.h (map::map(const _Compare&, const _Allocator&)): Likewise. * include/profile/multimap.h (multimap::multimap(const _Compare&, const _Allocator&)): Likewise. * include/profile/set.h (set::set(const _Compare&, const _Allocator&)): Likewise. * include/profile/multiset.h (multiset::multiset(const _Compare&, const _Allocator&)): Likewise. * include/profile/vector (vector::vector(const _Allocator&)): Likewise. * testsuite/23_containers/deque/58764.cc: New. * testsuite/23_containers/list/58764.cc: New. * testsuite/23_containers/map/58764.cc: New. * testsuite/23_containers/multimap/58764.cc: New. * testsuite/23_containers/set/58764.cc: New. * testsuite/23_containers/multiset/58764.cc: New. * testsuite/23_containers/vector/58764.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/list/requirements/dr438/assign_neg.cc: Likewise. * 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. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206939 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/stl_deque.h (_Deque_impl): Move comment.redi2014-01-221-3/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206924 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-21 Tim Shen <timshen91@gmail.com>timshen2014-01-212-2/+2
| | | | | | | | | | * include/bits/regex.tcc: Remove incorrect `nosubs` handling. * include/bits/regex_scanner.tcc: Handle `nosubs` correctly. * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206906 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56267redi2014-01-211-20/+0
| | | | | | | | | | | | | * include/bits/hashtable.h (__cache_default): Do not depend on whether the hash function is DefaultConstructible or CopyAssignable. (_Hashtable): Adjust static assertions. * doc/xml/manual/containers.xml (containers.unordered.cache): Update. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error line number. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206904 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/56267redi2014-01-201-13/+101
| | | | | | | | | | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant friendship to _Local_iterator_base<..., false>. (_Local_iterator_base): Give protected access to all existing members. (_Local_iterator_base::_M_curr()): New public accessor. (_Local_iterator_base::_M_get_bucket()): New public accessor. (_Local_iterator_base<..., false>::_M_init()): New function to manage the lifetime of the _Hash_code_base explicitly. (_Local_iterator_base<..., false>::_M_destroy()): Likewise. (_Local_iterator_base<..., false>): Define copy constructor and copy assignment operator that use new functions to manage _Hash_code_base. (operator==(const _Local_iterator_base&, const _Local_iterator_base&), operator==(const _Local_iterator_base&, const _Local_iterator_base&)): Use public API for _Local_iterator_base. * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise. * include/debug/unordered_map (__debug::unordered_map::erase(), __debug::unordered_multimap::erase()): Likewise. * include/debug/unordered_set (__debug::unordered_set::erase(), __debug::unordered_multiset::erase()): Likewise. * testsuite/23_containers/unordered_set/56267-2.cc: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206834 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-19 Tim Shen <timshen91@gmail.com>timshen2014-01-192-3/+6
| | | | | | | | | | | * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()): Fix parse error of multiple consecutive quantifiers like "a**". * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()): Likewise. * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206783 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-17 Tim Shen <timshen91@gmail.com>timshen2014-01-169-484/+544
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not use std::map. * include/bits/regex_automaton.h: Do not use std::set. * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(), _BracketMatcher<>::_M_add_collating_element(), _BracketMatcher<>::_M_add_equivalence_class(), _BracketMatcher<>::_M_make_range()): Likewise. * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()): Likewise. * include/bits/regex_executor.h: Do not use std::queue. * include/bits/regex_executor.tcc (_Executor<>::_M_main(), _Executor<>::_M_dfs()): Likewise. * include/std/regex: Remove <map>, <set> and <queue>. 2014-01-17 Tim Shen <timshen91@gmail.com> * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(), basic_regex<>::assign()): Change __compile_nfa to accept const _CharT* only. * include/bits/regex_compiler.h: Change _Compiler's template argument from <_FwdIter, _TraitsT> to <_TraitsT>. * include/bits/regex_compiler.tcc: Likewise. 2014-01-17 Tim Shen <timshen91@gmail.com> * include/bits/regex_compiler.h: Change _ScannerT into char-type templated. * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate _ScannerBase from _Scanner; Change _Scanner's template argument from _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays instead. * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(), _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(), _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()): Likewise. * include/std/regex: Add <cstring> for using strchr. 2014-01-17 Tim Shen <timshen91@gmail.com> * bits/regex_automaton.tcc: Indentation fix. * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>, _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>, _BracketMatcher<>): Add bool option template parameters and specializations to make matching more efficient and space saving. * bits/regex_compiler.tcc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206690 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-15 François Dumont <fdumont@gcc.gnu.org>fdumont2014-01-152-9/+13
| | | | | | | | | | | | | | | * include/bits/hashtable_policy.h: Fix some long lines. * include/bits/hashtable.h (__hash_code_base_access): Define and use it to check its _M_bucket_index noexcept qualification. Use also in place of... (__access_protected_ctor): ...this. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adapt line number. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206632 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/59738redi2014-01-091-1/+2
| | | | | | | * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore support for non-Movable types. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206480 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-08 François Dumont <fdumont@gcc.gnu.org>fdumont2014-01-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass *this allocator instance when building temporary vector instance so that *this allocator does not get moved. * include/debug/safe_base.h (_Safe_sequence_base(_Safe_sequence_base&&)): New. * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new move constructor from _Safe_sequence_base. (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap safe iterators if the instance is moved. (__gnu_debug::vector<>::operator=(vector&&)): Likewise. * testsuite/23_containers/vector/allocator/move.cc (test01): Add check on a vector iterator. * testsuite/23_containers/vector/allocator/move_assign.cc (test02): Likewise. (test03): New, test with a non-propagating allocator. * testsuite/23_containers/vector/debug/move_assign_neg.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206444 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-01-07 Tim Shen <timshen91@gmail.com>timshen2014-01-074-79/+213
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(), _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(), _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(), _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(), _BracketMatcher<>::_M_add_char(), _BracketMatcher<>::_M_add_collating_element(), _BracketMatcher<>::_M_add_equivalence_class(), _BracketMatcher<>::_M_add_character_class(), _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(), _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()): Fix _AnyMatcher behavior of POSIX style and move _M_flags to template parameter; Add cache for _BracketMatcher. Adjust declarations from here... * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also, imbuing a regex will trigger a recompilation to rebuild the cache. * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(), _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for different template bool parameters. * include/bits/regex_executor.h: Remove unnecessary declarations. * include/std/regex: Adjust including orders. * testsuite/28_regex/traits/char/user_defined.cc: New. * testsuite/28_regex/traits/wchar_t/user_defined.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206400 138bc75d-0d04-0410-961f-82ee72b054a4
* Update copyright years in libstdc++-v3/rsandifo2014-01-02104-104/+104
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206301 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-12-09 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-12-091-2/+4
| | | | | | | | | | | | | PR libstdc++/59427 * include/bits/fstream.tcc (basic_filebuf<>::overflow, basic_filebuf<>::xsputn): Per lwg/596, ios_base::app implies ios_base:out. * include/std/fstream (basic_filebuf<>::_M_set_buffer): Likewise. * testsuite/27_io/basic_filebuf/sputc/char/59427.cc: New. * testsuite/27_io/basic_filebuf/sputn/char/59427.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205837 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-12-03 Tim Shen <timshen91@gmail.com>timshen2013-12-032-0/+5
| | | | | | | | * regex_compiler.h: Add todo comment. * regex_executor.tcc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205624 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/59247redi2013-11-223-4/+8
| | | | | | | | | | | | | * include/bits/c++config (_GLIBCXX_INLINE_VERSION): Declare namespace std::experimental::__7 as inline. * include/bits/regex.h (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Do not enclose namespace __detail. * include/bits/regex.tcc (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Likewise. * include/std/iomanip (_GLIBCXX_BEGIN_NAMESPACE_VERSION): Likewise. * include/ext/pb_ds/tag_and_trait.hpp (detail): Fix comment. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205277 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/shared_ptr_base.h (_Sp_counted_base<_S_single>): Useredi2013-11-181-5/+38
| | | | | | | | non-atomic operations. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number. * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204949 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/stl_bvector.h (vector<bool>::emplace_back()): LWG 2187:redi2013-11-151-1/+12
| | | | | | | | Define. (vector<bool>::emplace()): Likewise. * testsuite/23_containers/vector/bool/emplace.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204851 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud