summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include
Commit message (Collapse)AuthorAgeFilesLines
...
* * include/Makefile.am (install-freestanding-headers): Installjason2011-11-0115-2/+33
| | | | | | | c++0x_warning.h. * libsupc++/initializer_list: Include it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180727 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/50920jason2011-10-311-3/+3
| | | | | | | | | | | | | | | | | | | | gcc/c-family * c-common.h (cxx_dialect): Add cxx11 and cxx03. * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03, and -Wc++11-compat. * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x. gcc/cp * class.c (check_field_decl): Change c++0x in diags to c++11. * error.c (maybe_warn_cpp0x): Likewise. * parser.c (cp_parser_diagnose_invalid_type_name): Likewise. * pt.c (check_default_tmpl_args): Likewise. libcpp * include/cpplib.h (enum c_lang): Rename CLK_CXX0X to CLK_CXX11, CLK_GNUCXX0X to CLK_GNUCXX11. libstdc++-v3 * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180707 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-28 Richard B. Kreckel <kreckel@ginac.de>paolo2011-10-282-2/+2
| | | | | | | | | * include/std/complex (__complex_acosh): Just use '< _Tp()'. * include/tr1/complex (__complex_acosh): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180607 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-27 Richard B. Kreckel <kreckel@ginac.de>paolo2011-10-272-0/+4
| | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/50880 * include/std/complex (__complex_acosh): Fix for __z.real() < 0. * include/tr1/complex (__complex_acosh): Likewise. * testsuite/26_numerics/complex/50880.cc: New. * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180563 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/50862redi2011-10-261-1/+7
| | | | | | | | | * include/std/condition_variable (condition_variable_any::wait): Avoid terminating if relocking user mutex throws during stack-unwinding. * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180549 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/std/condition_variable (condition_variable_any): Removeredi2011-10-251-1/+0
| | | | | | | | | | unused native_handle_type typedef. * src/condition_variable.cc (condition_variable): Add missing noexcept specifications. * 30_threads/condition_variable_any/requirements/typedefs.cc: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180454 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/50862redi2011-10-251-8/+13
| | | | | | | | | | * include/std/condition_variable (condition_variable_any::wait): Fix deadlock and ensure _Lock::lock() is called on exit. (condition_variable_any::native_handle): Remove, as per LWG 1500. * testsuite/30_threads/condition_variable_any/50862.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180446 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/49894redi2011-10-242-108/+114
| | | | | | | | | | | | | | | | * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new base classes to manage construction/destruction of native mutexes, using NSDMI when INIT macros are defined. (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from new base classes. * include/std/condition_variable (condition_variable): Use NSDMI when INIT macro is defined. Use noexcept. * src/condition_variable.cc (condition_variable): Explicitly-default constructor/destructor when using NSDMI. Use noexcept. (condition_variable_any): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180411 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/50196redi2011-10-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS. * configure: Regenerate. * include/std/mutex (timed_mutex, recursive_timed_mutex): Define conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK. * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define. * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define. * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc: Use dg-require-gthreads-timed instead of dg-require-gthreads. * testsuite/30_threads/recursive_timed_mutex/native_handle/ typesizes.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc: Likewise. * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc: Likewise. * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise. * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise. * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise. * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc: Likewise. * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise. * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise. * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise. * testsuite/30_threads/unique_lock/cons/5.cc: Likewise. * testsuite/30_threads/unique_lock/cons/6.cc: Likewise. * testsuite/30_threads/unique_lock/locking/3.cc: Likewise. * testsuite/30_threads/unique_lock/locking/4.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180329 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-19 Ed Smith-Rowland <3dw4rd@verizon.net>bkoz2011-10-197-105/+2241
| | | | | | | | | | | | | | | | | | | * include/tr2/bool_set (bool_set): New. * include/tr2/bool_set.tcc: New. * include/tr2/dynamic_bitset (dynamic_bitset): New. * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New. * include/Makefile.am: Add files. * include/Makefile.in: Regenerate. 2011-10-19 Benjamin Kosnik <bkoz@redhat.com> * doc/doxygen/user.cfg.in: Add tr2 files. * testsuite/tr2/headers/all.cc: New. * testsuite/tr2/headers/using_namespace_std_tr2.cc: New. * include/tr2/type_traits: Tweak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180211 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/50500jason2011-10-181-0/+2
| | | | | | | | | | | | | | | DR 1082 * class.c (type_has_user_declared_move_constructor): New. (type_has_user_declared_move_assign): New. (add_implicitly_declared_members): Add lazy copy ops even if there's a move. * method.c (lazily_declare_fn): Delete implicit copies if there's a move. (maybe_explain_implicit_delete): Explain this. Use inform rather than error. * cp-tree.h: Declare new fns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180159 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-17 Michael Spertus <mike_spertus@symantec.com>bkoz2011-10-183-4/+132
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gcc/c-family/c-common.c (c_common_reswords): Add __bases, __direct_bases. * gcc/c-family/c-common.h: Add RID_BASES and RID_DIRECT_BASES. 2011-10-17 Michael Spertus <mike_spertus@symantec.com> * cp-tree.def: Add BASES as a new tree code. * cp-tree.h (enum cp_trait_kind): Add CPTK_BASES, CPTK_DIRECT_BASES. (BASES_TYPE, BASES_DIRECT): Define. (calculate_bases, finish_bases, calculate_direct_bases): Declare. * parser.c (cp_parser_trait_expr, cp_parser_template_argument_list, (cp_parser_simple_type_specifier, cp_parser_save_nsdmi): Use them. * pt.c (find_parameter_packs_r, tsubst_pack_expansion): Likewise. * semantics.c (calculate_bases, finish_bases, calculate_direct_bases, dfs_calculate_bases_pre, dfs_calculate_bases_post, calculate_bases_helper): Define. 2011-10-17 Michael Spertus <mike_spertus@symantec.com> * g++.dg/ext/bases.C: New test. 2011-10-17 Michael Spertus <mike_spertus@symantec.com> * include/tr2/type_traits (bases, direct_bases, typelist): New. 2011-10-17 Benjamin Kosnik <bkoz@redhat.com> * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes. * libstdc++-v3/include/Makefile.in: Regenerate. * scripts/create_testsuite_files: Search tr2 directory. * testsuite/libstdc++-dg/conformance.exp: Same. * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New. * testsuite/tr2/bases/requirements/typedefs.cc: New. * testsuite/tr2/bases/value.cc: New. * testsuite/tr2/direct_bases/requirements/ explicit_instantiation.cc: New. * testsuite/tr2/direct_bases/requirements/typedefs.cc: New. * testsuite/tr2/direct_bases/value.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180121 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-14 Jonathan Yong <jon_y@users.sourceforge.net>ktietz2011-10-142-9/+9
| | | | | | | | | | | | | | | | | | | * configure.host: Use config/os/mingw32-w64 instead of config/os/mingw32 if vendor key is "w64". * config/os/mingw32-w64: Duplicate from config/os/mingw32. * config/os/mingw32-w64/os_defines.h: Enable _GLIBCXX_FULLY_DYNAMIC_STRING if undefined. * acinclude.m4: Set fully-dynamic-string to 1 when enabled, 0 when disabled or undefined if unset by user. * include/bits/basic_string.h: Check if _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined. include/bits/basic_string.tcc: Likewise. * configure: Regenerated. * config.h.in: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179961 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-13 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-10-141-1/+3
| | | | | | | | | | PR libstdc++/50714 * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize _M_c_locale_codecvt member. * testsuite/22_locale/codecvt_byname/50714.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179948 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-12 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-10-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | PR c++/50594 * decl.c (cxx_init_decl_processing): Add __attribute__((externally_visible)) to operator new and operator delete library fn. 2011-10-12 Paolo Carlini <paolo.carlini@oracle.com> PR c++/50594 * libsupc++/new (operator new, operator delete): Decorate with __attribute__((__externally_visible__)). * include/bits/c++config: Add _GLIBCXX_THROW. * libsupc++/del_op.cc: Adjust. * libsupc++/del_opv.cc: Likewise. * libsupc++/del_opnt.cc: Likewise. * libsupc++/del_opvnt.cc: Likewise. * libsupc++/new_op.cc: Likewise. * libsupc++/new_opv.cc: Likewise. * libsupc++/new_opnt.cc: Likewise. * libsupc++/new_opvnt.cc: Likewise. * testsuite/18_support/50594.cc: New. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179863 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-11 Emil Wojak <emil@wojak.eu>paolo2011-10-111-1/+2
| | | | | | | | | PR c++/50661 * include/bits/stl_algobase.h (equal): Compare arrays of pointers too with memcmp. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179801 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-05 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-10-061-1/+4
| | | | | | | | * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode when int_type is unsigned. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179587 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-10-042-30/+95
| | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/49561 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size): Add in C++0x mode. (_List_base<>::_List_impl, _List_base<>::_M_get_node, _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&), list<>::size, list<>::swap, list<>::splice): Use it. (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode. * include/bits/list.tcc (list<>::erase): Likewise. (list<>::merge): Adjust in C++0x mode. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/list/requirements/dr438/insert_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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179528 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-04 Jonathan Wakely <jwakely.gcc@gmail.com>redi2011-10-042-2/+16
| | | | | | | | | | | | | | | | | | | * include/ext/alloc_traits.h (__alloc_traits::max_size): Define. (__alloc_traits::rebind): Define. * include/bits/stl_vector.h: Use them. * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define. * testsuite/23_containers/vector/allocator/minimal.cc: New. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line numbers. * testsuite/23_containers/vector/requirements/dr438/insert_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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179523 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-03 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-10-032-27/+43
| | | | | | | | | | * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&), insert(const_iterator, value_type&&)): Don't define here... * include/bits/unordered_set.h (__unordered_set<>, __unordered_multiset<>): ... define here instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179464 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-10-01 François Dumont <fdumont@gcc.gnu.org>fdumont2011-10-012-2/+2
| | | | | | | | | | * include/debug/vector (vector<>::erase(iterator, iterator): Check iterators equality using normal iterators. * include/debug/deque (deque<>::erase(iterator, iterator): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179414 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-29 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-291-4/+2
| | | | | | | | | * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Remove noexcept from declaration too. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179360 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-26 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-275-11/+26
| | | | | | | | | | | | | | | | PR libstdc++/50529 * include/bits/vector.tcc (vector<>::erase(iterator, iterator)): Fix to do nothing if the range is empty. * include/bits/stl_bvector.h: Likewise. * include/bits/deque.tcc: Likewise. * include/debug/vector: Adjust. * include/debug/deque: Likewise. * testsuite/23_containers/vector/modifiers/erase/50529.cc: New. * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise. * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179234 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-26 Benjamin Kosnik <bkoz@redhat.combkoz2011-09-272-20/+21
| | | | | | | | | | | | | | | | | | Jonathan Wakely <jwakely.gcc@gmail.com> PR libstdc++/48698 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here. * configure.ac: Move AC_SUBST of libtool_VERSION past call to GLIBCXX_ENABLE_SYMVERS. * configure: Regenerate. * include/bits/c++config: Use __7 as versioned namespace name. * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as per above. * include/c_global/cwchar: Adjust nested namespaces. * testsuite/20_util/bind/48698.cc: Add test case. * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179221 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-24 John Salmon <john.salmon@deshaw.com>paolo2011-09-241-2/+2
| | | | | | | | PR libstdc++/50510 * include/bits/random.tcc (seed_seq::generate): Fix computation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179149 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-24 John Salmon <john.salmon@deshaw.com>paolo2011-09-241-2/+2
| | | | | | | | PR libstdc++/50509 * include/bits/random.tcc (seed_seq::generate): Fix computation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179144 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-21 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-212-43/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | * src/limits.cc: Replace everywhere __int128_t -> __int128, and __uint128_t -> unsigned __int128. * include/std/type_traits: Likewise. * include/std/limits: Likewise. * testsuite/18_support/numeric_limits/dr559.cc: Likewise. * testsuite/18_support/numeric_limits/lowest.cc: Likewise. * testsuite/18_support/numeric_limits/40856.cc: Likewise. * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise. * testsuite/util/testsuite_common_types.h: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/is_floating_point/value.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/is_signed/value.cc: Likewise. * testsuite/20_util/is_unsigned/value.cc: Likewise. * testsuite/20_util/is_integral/value.cc: Likewise. * config/abi/pre/gnu.ver: Likewise. * acinclude.m4: Likewise. * configure: Regenerate. * config.h.in: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179044 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-19 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-192-1/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/40856 * include/std/limits (numeric_limits<__int128_t>, numeric_limits<__uint128_t>): Add. * src/limits.cc:Define. * config/abi/pre/gnu.ver: Export. * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add. * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add (limits_tl): Use it. * testsuite/18_support/numeric_limits/requirements/ constexpr_functions.cc: Likewise. * testsuite/18_support/numeric_limits/40856.cc: New. * testsuite/18_support/numeric_limits/dr559.cc: Extend. * testsuite/18_support/numeric_limits/lowest.cc: Likewise. * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise. * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error line numbers. * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Likewise. * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178969 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-17 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-171-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/50441 * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add. * configure.ac: Call it. * include/std/type_traits (__is_integral_helper<__int128_t>, __is_integral_helper<__uint128_t>, __is_floating_point_helper<__float128>, __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add. * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend. * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise. * testsuite/20_util/is_signed/value.cc: Likewise. * testsuite/20_util/is_unsigned/value.cc: Likewise. * testsuite/20_util/is_integral/value.cc: Likewise. * testsuite/20_util/is_floating_point/value.cc: New. * testsuite/20_util/is_floating_point/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_floating_point/requirements/ explicit_instantiation.cc: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * configure: Regenerate. * config.h.in: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178933 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-17 François Dumont <fdumont@gcc.gnu.org>fdumont2011-09-171-2/+2
| | | | | | | | | | | * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const _RehashPolicy&)): Commit the modification of the policy only if no exception occured. * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178927 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-15 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-161-6/+7
| | | | | | | | | | | | * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr. (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable make_tuple test. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178904 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-14 François Dumont <fdumont@gcc.gnu.org>fdumont2011-09-141-23/+41
| | | | | | | | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore hash policy _M_prev_resize on exception. (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize before using it and use latter method to have it restored on exception. (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise. (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise. (_Hashtable<>::rehash): Likewise. * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New. * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178861 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-12 Daniel Krugler <daniel.kruegler@googlemail.com>paolo2011-09-133-75/+84
| | | | | | | | | | | | | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail, _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static constexpr functions; adjust everywhere. (__get_helper, get): Declare constexpr all three overloads. (tuple_cat): Declare constexpr; use late return type to improve error messages. * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get, __pair_get<>::__const_get, get): Declare all constexpr. * include/std/array (get): Likewise. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable tuple_cat test. * testsuite/23_containers/array/constexpr_get.cc: New. * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise. * testsuite/20_util/pair/constexpr_get.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error line number. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178799 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-11 Daniel Krugler <daniel.kruegler@googlemail.com>paolo2011-09-112-140/+199
| | | | | | | | | | | | | | | | | | | | PR libstdc++/50159 * include/std/tuple (tuple_cat): Reimplement according to the resolution of LWG 1385. * include/std/type_traits: Define __and_ and __or_ for zero arguments too; minor tweaks. * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New. * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable for now tuple_cat test. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * doc/xml/manual/status_cxx200x.xml: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178770 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-104-25/+25
| | | | | | | | | | * include/std/tuple: Use everywhere std::size_t... instead of int... * include/std/functional: Likewise. * include/std/scoped_allocator: Likewise. * include/bits/stl_pair.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178746 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-081-1/+7
| | | | | | | | | | | PR libstdc++/50336 * include/bits/streambuf_iterator.h (class istreambuf_iterator): Implement LWG 445 in C++0x mode. * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178713 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/33255 - Support -Wunused-local-typedefs warningdodji2011-09-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ * c-decl.c (lookup_name): Use the new maybe_record_typedef_use. (pushdecl): Use the new record_locally_defined_typedef. (store_parm_decls): Allocate cfun->language. (finish_function): Use the new maybe_warn_unused_local_typedefs, and free cfun->language. (c_push_function_context): Allocate cfun->language here only if needed. (c_pop_function_context): Likewise, mark cfun->language for collection only when it should be done. * c-common.c (handle_used_attribute): Don't ignore TYPE_DECL nodes. * c-typeck.c (c_expr_sizeof_type, c_cast_expr): Use the new maybe_record_local_typedef_use. gcc/c-family * c-common.h (struct c_language_function::local_typedefs): New field. (record_locally_defined_typedef, maybe_record_typedef_use) (maybe_warn_unused_local_typedefs): Declare new functions. * c-common.c (record_locally_defined_typedef) (maybe_record_typedef_use) (maybe_warn_unused_local_typedefs): Define new functions. * c.opt: Declare new -Wunused-local-typedefs flag. gcc/cp * name-lookup.c (pushdecl_maybe_friend_1): Use the new record_locally_defined_typedef. * decl.c (finish_function): Use the new maybe_warn_unused_local_typedefs. (grokfield): Use the new record_locally_defined_typedef. * parser.c (lookup_name): Use the new maybe_record_typedef_use. gcc/doc/ * invoke.texi: Update documentation for -Wunused-local-typedefs. gcc/testsuite/ * g++.dg/warn/Wunused-local-typedefs.C: New test file. * c-c++-common/Wunused-local-typedefs.c: Likewise. libstdc++-v3/ * include/ext/bitmap_allocator.h (__detail::__mini_vector::__lower_bound): Remove unused typedef. * src/istream.cc (std::operator>>(basic_istream<char>& __in, basic_string<char>& __str)): Likewise. (std::getline): Likewise. * src/valarray.cc (__valarray_product): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178692 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-06 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-09-072-35/+35
| | | | | | | | | | | | | | | | | | | | | * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr. (tuple(tuple&&)): Same. (tuple(const tuple<_UElements...>& __in)): Same. (tuple(tuple<_UElements...>&& __in)): Same. (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)): Same. (get): Same. * include/std/array: Consolidate array::data usage. * testsuite/23_containers/array/requirements/constexpr_functions.cc: Remove extra include. * testsuite/20_util/tuple/creation_functions/constexpr.cc: New. * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests. * testsuite/20_util/tuple/cons/constexpr-3.cc: Same. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178620 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-06 François Dumont <fdumont@gcc.gnu.org>paolo2011-09-061-23/+12
| | | | | | | | | | | | | Paolo Carlini <paolo.carlini@oracle.com> * include/bits/hashtable_policy.h (_Prime_rehash_policy:: _M_next_bkt): Cast _M_max_load_factor to long double. (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt. (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all float quantities to long double. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178615 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-06 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-061-2/+9
| | | | | | | | | PR libstdc++/50257 * include/bits/hashtable_policy.h (_Prime_rehash_policy:: _M_next_bkt): Optimize for small argument. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178581 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-021-16/+16
| | | | | | | * include/std/bitset: Trivial formatting fixes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178478 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-021-16/+21
| | | | | | | | | | | Marc Glisse <marc.glisse@normalesup.org> * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove. (_Base_bitset<>::_M_are_all): Add. (bitset<>::all): Use the latter, improve implementation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178473 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-021-2/+23
| | | | | | | | | | | | Marc Glisse <marc.glisse@normalesup.org> PR libstdc++/50268 * include/std/bitset (struct _Sanitize_val): Add. (bitset<>::bitset(unsigned long long)): Fix. * testsuite/23_containers/bitset/cons/50268.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178463 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-01 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-09-015-22/+3
| | | | | | | | | | | | | | | | | | | | | | * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): Remove noexcept, the move constructor allocates memory; rearrange the code in the body to consistently update __ht._M_rehash_policy before using _M_next_bkt on it. * include/debug/unordered_map: Adjust. * include/debug/unordered_set: Likewise. * include/profile/unordered_map: Likewise. * include/profile/unordered_set: Likewise. * testsuite/23_containers/unordered_map/cons/ noexcept_move_construct.cc: Remove. * testsuite/23_containers/unordered_set/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_multimap/cons/ noexcept_move_construct.cc: Likewise. * testsuite/23_containers/unordered_multiset/cons/ noexcept_move_construct.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178423 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-31 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-08-311-1/+1
| | | | | | | | * include/std/chrono (operator*(const _Rep1&, const duration<>&)): Fix order of template parameters per LWG 2004. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178374 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-30 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-08-301-2/+3
| | | | | | | | | | * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061. * testsuite/24_iterators/move_iterator/dr2061.cc: New. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line numbers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178330 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-29 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-08-298-41/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/50118 * include/bits/stl_list.h (_List_base<>:: _List_base(const allocator_type&)): Remove. (_List_base<>::_List_base(const _Node_alloc_type&)): Add. (list<>:list(const allocator_type&), list(size_type, const value_type&, const allocator_type&), list(initializer_list<, const allocator_type&), list(_InputIterator, _InputIterator, const allocator_type&), insert(iterator, size_type, const value_type&), insert(iterator, _InputIterator, _InputIterator)): Adjust. * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&)): Fix. * include/bits/stl_map.h (map<>::map(const _Compare&, const allocator_type&), map(initializer_list<>, const _Compare&, const allocator_type&), map(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Adjust. * include/bits/stl_set.h (set<>::set(const _Compare&, const allocator_type&), set(initializer_list<>, const _Compare&, const allocator_type&), set(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Likewise. * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&, const allocator_type&), multimap(initializer_list<>, const _Compare&, const allocator_type&), multimap(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Likewise. * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&, const allocator_type&), multiset(initializer_list<>, const _Compare&, const allocator_type&), multiset(_InputIterator, _InputIterator, const _Compare&, const allocator_type&), get_allocator): Likewise. * include/bits/forward_list.h (_Fwd_list_base<>:: _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&, const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)): Remove. (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&), _Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Add. (forward_list<>::forward_list(const _Alloc&), forward_list(const forward_list&, const _Alloc&), forward_list(forward_list&&, const _Alloc&), forward_list(size_type, const _Tp&, const _Alloc&), forward_list(_InputIterator, _InputIterator, const _Alloc&), forward_list(std::initializer_list<>, const _Alloc&), get_allocator): Adjust. * include/bits/forward_list.tcc * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add. * testsuite/23_containers/unordered_map/requirements/ explicit_instantiation/5.cc: New. * testsuite/23_containers/multimap/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/multimap/requirements/ explicit_instantiation/5_c++0x.cc: Likewise. * testsuite/23_containers/set/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/set/requirements/explicit_instantiation/ 5_c++0x.cc: Likewise. * testsuite/23_containers/unordered_multimap/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/forward_list/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/unordered_set/requirements/ explicit_instantiation/5.cc: Likewise. testsuite/23_containers/multiset/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/multiset/requirements/ explicit_instantiation/5_c++0x.cc: Likewise. * testsuite/23_containers/list/requirements/explicit_instantiation/ 5_c++0x.cc: Likewise. * testsuite/23_containers/list/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/unordered_multiset/requirements/ explicit_instantiation/5.cc: Likewise. * testsuite/23_containers/map/requirements/explicit_instantiation/ 5.cc: Likewise. * testsuite/23_containers/map/requirements/explicit_instantiation/ 5_c++0x.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/forward_list/requirements/dr438/ insert_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/forward_list/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/insert_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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178230 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-28 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-08-282-11/+3
| | | | | | | | | * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove workaround for c++/49045. * include/bits/algorithmfwd.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178147 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-18 Marc Glisse <marc.glisse@normalesup.org>paolo2011-08-181-0/+3
| | | | | | | * include/tr1/cmath: Extend/update comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177873 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-08-18 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-08-181-4/+10
| | | | | | | | | | PR libstdc++/50119 * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size, _OutputIterator, input_iterator_tag)): Fix. * testsuite/25_algorithms/copy_n/50119.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177871 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud