Benjamin Kosnik
cbef15a5ba
Makefile.am (CLEANFILES): Add *.gdb.
...
2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/Makefile.am (CLEANFILES): Add *.gdb.
* testsuite/Makefile.in: Regenerate.
From-SVN: r184772
2012-03-02 01:04:16 +00:00
Benjamin Kosnik
c9fd7c7ba7
re PR libstdc++/52191 (abi_check should flag additions to released versions)
...
2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/52191
* testsuite/util/testsuite_abi.cc (compare_symbols): Check new
symbols added into the latest version. Mark tls entities as
undesignated.
From-SVN: r184639
2012-02-28 20:25:48 +00:00
John David Anglin
de1ab4a5e1
re PR testsuite/52201 (FAIL: 29_atomics/atomic/operators/51811.cc (test for excess errors))
...
PR testsuite/52201
* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: Require atomic builtins.
* testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
From-SVN: r184576
2012-02-25 19:36:11 +00:00
Edward Smith-Rowland
afe03c233e
Add testsuite checks for param_type in the <random> distributions.
...
From-SVN: r184501
2012-02-23 02:25:00 +00:00
Paolo Carlini
4bee90f7bf
re PR libstdc++/52317 (incorrect FSF address)
...
2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/52317
* python/Makefile.am: Update boilerplate license text to GPLv3.
* include/profile/unordered_map: Likewise.
* include/profile/set: Likewise.
* include/profile/base.h: Likewise.
* include/profile/impl/profiler_list_to_slist.h: Likewise.
* include/profile/impl/profiler_container_size.h: Likewise.
* include/profile/impl/profiler_vector_size.h: Likewise.
* include/profile/impl/profiler_hash_func.h: Likewise.
* include/profile/impl/profiler_trace.h: Likewise.
* include/profile/impl/profiler_list_to_vector.h: Likewise.
* include/profile/impl/profiler_vector_to_list.h: Likewise.
* include/profile/impl/profiler.h: Likewise.
* include/profile/impl/profiler_state.h: Likewise.
* include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
* include/profile/impl/profiler_algos.h: Likewise.
* include/profile/impl/profiler_hashtable_size.h: Likewise.
* include/profile/impl/profiler_node.h: Likewise.
* include/profile/vector: Likewise.
* include/profile/unordered_set: Likewise.
* include/profile/map.h: Likewise.
* include/profile/map: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/
wchar_t/dr1261.cc: Likewise.
* testsuite/21_strings/basic_string/numeric_conversions/
char/dr1261.cc: Likewise.
* testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
From-SVN: r184430
2012-02-21 10:55:54 +00:00
Paolo Carlini
d150390867
re PR libstdc++/52309 ([c++0x] unordered_set illegally requires value_type::operator!=)
...
2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/52309
* include/bits/hashtable_policy.h (_Equality_base<, true,>::
_M_equal(const _Hashtable&)): Compare values with operator==.
* testsuite/23_containers/unordered_set/operators/52309.cc: New.
From-SVN: r184388
2012-02-20 11:11:39 +00:00
Benjamin Kosnik
b124c5c482
re PR libstdc++/47058 ("--enable-maintainer-mode --disable-werror" wrongly upgrades warnings to errors in libstdc++)
...
2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/47058
* acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
(GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
* configure.ac: Use it.
* fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
* configure: Regenerate.
* python/Makefile.in: Same.
* Makefile.in: Same.
* doc/Makefile.in: Same.
* include/Makefile.in: Same.
* po/Makefile.in: Same.
* python/Makefile.in: Same.
* src/Makefile.in: Same.
* src/c++11/Makefile.in: Same.
* src/c++98/Makefile.in: Same.
* testsuite/Makefile.in: Same.
From-SVN: r184349
2012-02-17 20:26:32 +00:00
Benjamin Kosnik
2a5d011c41
re PR libstdc++/51368 (libstdc++ python pretty printers should use --with-python-dir just like libjava)
...
2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/51368
* acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
* configure.ac: Use it.
* python/Makefile.am: Same.
* configure: Regenerate.
* python/Makefile.in: Regenerate.
* Makefile.in: Same.
* doc/Makefile.in: Same.
* include/Makefile.in: Same.
* po/Makefile.in: Same.
* src/Makefile.in: Same.
* src/c++11/Makefile.in: Same.
* src/c++98/Makefile.in: Same.
* testsuite/Makefile.in: Same.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r184282
2012-02-15 19:56:07 +00:00
Jonathan Wakely
e73bea1ceb
* 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
...
From-SVN: r184245
2012-02-14 23:55:18 +00:00
Tom Tromey
d25b1e3a80
cxx11.cc (main): Add new tests.
...
* testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
tests.
* python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
Rewrite.
(Tr1HashtableIterator.update): Remove.
(Tr1HashtableIterator.next): Rewrite.
From-SVN: r184233
2012-02-14 20:38:39 +00:00
Benjamin Kosnik
1380aca7e6
43820_neg.cc: Adjust line numbers.
...
2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
From-SVN: r184192
2012-02-14 03:48:02 +00:00
Benjamin Kosnik
75cee7c62a
PR libstdc++/51798 continued.
...
2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/51798 continued.
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
builtins instead of __sync_* builtins for atomic functionality.
* include/bits/shared_ptr_base.h: Same.
* include/parallel/compatibility.h: Same.
* include/profile/impl/profiler_state.h: Same.
* include/tr1/shared_ptr.h: Same.
* libsupc++/eh_ptr.cc: Same.
* libsupc++/eh_throw.cc: Same.
* libsupc++/eh_tm.cc: Same.
* libsupc++/guard.cc: Same.
* configure: Regenerated.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r184110
2012-02-10 18:20:43 +00:00
Jonathan Wakely
b8a8c70309
39909.cc: Remove duplicate target selector.
...
* testsuite/30_threads/call_once/39909.cc: Remove duplicate target
selector.
* testsuite/30_threads/call_once/49668.cc: Likewise.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.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/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
From-SVN: r183984
2012-02-07 22:26:16 +00:00
Jonathan Wakely
a1527f2f5b
re PR libstdc++/51956 ([patch] improve shared_ptr and weak_ptr pretty-printers for gdb)
...
PR libstdc++/51956
* python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
(SharedPointerPrinter): This. Also show weak count.
* testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
From-SVN: r183914
2012-02-05 19:10:15 +00:00
Jonathan Wakely
e3aaef375c
weak_ptr_expired.cc: Modify to PASS instead of XFAIL.
...
* testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
PASS instead of XFAIL.
From-SVN: r183906
2012-02-05 13:08:02 +00:00
Benjamin Kosnik
0f1fce6945
re PR libstdc++/49445 ([C++0x] Undefined reference to std::atomic<float> "operator float")
...
2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/49445
From-SVN: r183878
2012-02-03 21:10:00 +00:00
Benjamin Kosnik
4035739819
re PR libstdc++/51811 ([C++0x] Incorrect increment/decrement of atomic pointers)
...
2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/51811
* include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
* testsuite/29_atomics/atomic/operators/51811.cc: New.
* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
From-SVN: r183875
2012-02-03 19:49:11 +00:00
Jonathan Wakely
488b3e6573
re PR libstdc++/49204 ([C++0x] remaining issues in <future>)
...
PR libstdc++/49204
* include/std/future (__future_base::_State_base::wait()): Use lambda
expression for predicate and remove redundant test.
(__future_base::_State_base::wait_for()): Return future_status and
use lambda expression for predicate.
(__future_base::_State_base::wait_until()): Likewise.
(__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
(__future_base::_Async_state): Replace with _Async_state_common
class for non-dependent functionality and _Async_state_impl class
template for dependent functionality.
(__future_base::_Async_state_common::_M_join): Serialize attempts to
join thread.
(__future_base::_Async_state_common::_M_run_deferred): Join.
(__future_base::_Async_state::_M_do_run): Replace with lambda.
* src/c++11/future.cc (__future_base::_Async_state_common): Define
destructor, so key function is in the library.
* config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
* testsuite/30_threads/packaged_task/members/get_future.cc: Expect
future_status return instead of bool.
* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
* testsuite/30_threads/future/members/wait_until.cc: Likewise.
* testsuite/30_threads/future/members/wait_for.cc: Likewise.
* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
* testsuite/30_threads/promise/members/swap.cc: Likewise.
From-SVN: r183788
2012-02-01 00:20:08 +00:00
Tom Tromey
3efe2bf72b
re PR libstdc++/51649 (pretty printers don't handle std::__7:: namespace)
...
PR libstdc++/51649:
* testsuite/libstdc++-prettyprinters/debug.cc: New file.
* testsuite/lib/gdb-test.exp (regexp-test): New proc.
(note-test): Update.
(gdb-test): Handle regexp tests. Add some logging.
* testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
(placeholder, use): Remove.
(main): Add tests for deque, list, map, and set iterators. Add
tests for slist and slist iterator.
* testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
namespace.
* python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
the type's _Node typedef.
(StdListIteratorPrinter.to_string): Change how node type is
computed.
(StdSlistPrinter.children): Use the type's _Node typedef.
(StdSlistIteratorPrinter.to_string): Likewise.
(StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
typedef.
(StdMapPrinter.children): Change how the node's type is computed.
(StdSetPrinter.children): Likewise.
(StdForwardListPrinter.children): Use the type's _Node typedef.
(Printer.add_version): New method.
(Printer.add_container): New method.
(build_libstdcxx_dictionary): Handle __7 and __cxx1998
namespaces.
(find_type): New function.
From-SVN: r183732
2012-01-30 16:25:11 +00:00
Richard Sandiford
a76be469fc
1.cc: Add dg-require-time.
...
libstdc++-v3/
* testsuite/20_util/system_clock/1.cc: Add dg-require-time.
* testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
* testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
* testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
dg-require-fileio.
* testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
* testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
Likewise.
* testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
From-SVN: r183531
2012-01-25 19:00:30 +00:00
Benjamin Kosnik
8bae34da8a
[multiple changes]
...
2012-01-20 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/49829
Add libc++98convenience.la, libc++11convenience.la.
* src/c++98: New directory.
* src/c++11: New directory.
* acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
* configure: Regenerated.
* Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
* Makefile.in: Regenerate.
* libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
-fno-implicit-templates.
* libsupc++/Makefile.in: Regenerate.
* src/Makefile.am (inst_sources): Move... C++11 files into
separate directory for libstdc++11convenience.la. Files are:
fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
(sources): Move C++11 files. Files are: compatibility-c++0x.cc,
compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
(libstdc++convenience.la): Add new target.
(SUBDIRS): Add c++11, c++98.
* src/Makefile.in: Regenerate.
* src/c++11/Makefile.am: New.
* src/c++11/Makefile.in: Generate.
* src/c++98/Makefile.am: New, C++98 files.
* src/c++98/Makefile.in: Generate.
2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/49829
Add libc++98convenience.la, libc++11convenience.la.
* src/c++98: New directory.
* src/c++11: New directory.
* acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
* configure: Regenerated.
* Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
* Makefile.in: Regenerate.
* libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
-fno-implicit-templates.
* libsupc++/Makefile.in: Regenerate.
* src/Makefile.am (inst_sources): Move... C++11 files into
separate directory for libstdc++11convenience.la. Files are:
fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
(sources): Move C++11 files. Files are: compatibility-c++0x.cc,
compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
(libstdc++convenience.la): Add new target.
(SUBDIRS): Add c++11, c++98.
* src/Makefile.in: Regenerate.
* src/c++11/Makefile.am: New.
* src/c++11/Makefile.in: Generate.
* src/c++98/Makefile.am: New, C++98 files.
* src/c++98/Makefile.in: Generate.
From-SVN: r183457
2012-01-23 23:12:01 +00:00
Rainer Orth
36ff4a7af7
Don't XFAIL 22_locale/num_put/put/*char/14220.cc on 32-bit Solaris 10/x86
...
* testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
32-bit Solaris 10/x86.
* testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
From-SVN: r183442
2012-01-23 17:46:34 +00:00
Jonathan Wakely
f6392e8fff
re PR libstdc++/50982 (AIX libstdc++ GTHREADS incompatibility)
...
PR libstdc++/50982
* testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
From-SVN: r183376
2012-01-21 21:27:49 +00:00
Jakub Jelinek
ac1384b7c5
re PR libstdc++/51845 (23_containers/unordered_multimap/erase/24061-multimap.cc segfault)
...
PR libstdc++/51845
* include/bits/hashtable.h
(_Hashtable<>::erase(const_iterator, const_iterator)): Also update
_M_buckets[__n_bkt] if __is_bucket_begin.
* testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
New test.
From-SVN: r183300
2012-01-19 11:46:31 +01:00
François Dumont
66b432fd29
re PR libstdc++/51866 ([c++0x][4.7 Regression] unordered_multiset compares moved-out values)
...
2012-01-18 François Dumont <fdumont@gcc.gnu.org>
Roman Kononov <roman@binarylife.net>
PR libstdc++/51866
* include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
Do not keep a reference to a potentially moved instance.
* testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
* testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
Co-Authored-By: Roman Kononov <roman@binarylife.net>
From-SVN: r183285
2012-01-18 20:17:57 +00:00
Benjamin Kosnik
43fe49ecf1
configure.ac (BUILD_EPUB): Adjust for epub3.
...
2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
* configure.ac (BUILD_EPUB): Adjust for epub3.
* configure: Regenerate.
* Makefile.in: Same.
* doc/Makefile.am (stamp-epub-docbook): Update for epub3.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* po/Makefile.in: Same.
* python/Makefile.in: Same.
* src/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* doc/xml/manual/documentation_hacking.xml: Update.
From-SVN: r183263
2012-01-17 23:39:21 +00:00
Benjamin Kosnik
4f7c82dcdb
fragment.am (WARN_CXXFLAGS): Add -Wabi.
...
2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
* fragment.am (WARN_CXXFLAGS): Add -Wabi.
* Makefile.in: Regenerate.
* doc/Makefile.in: Same.
* include/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* src/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* po/Makefile.in: Same.
* python/Makefile.in: Same.
From-SVN: r183034
2012-01-09 21:50:18 +00:00
Jonathan Wakely
8dfb08abc3
printers.py (StdForwardListPrinter): Add.
...
* python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
* testsuite/libstdc++-prettyprinters/cxx11.cc: New.
From-SVN: r182989
2012-01-08 12:34:00 +00:00
Jason Merrill
4b6aaa996e
re PR c++/6057 (expression mangling doesn't work for operator new)
...
PR c++/6057
PR c++/48051
PR c++/50855
PR c++/51322
gcc/cp/
* mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
THROW_EXPR, CONSTRUCTOR, OVERLOAD. Fix PREINCREMENT_EXPR and
PREDECREMENT_EXPR.
(write_template_arg): Fix mangling of class-scope functions and
argument packs.
(mangle_decl): Update suggested -fabi-version argument.
* operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
* tree.c (dependent_name): No longer static.
* cp-tree.h: Declare it.
* pt.c (unify): Defer handling of unconverted functions.
include/
* demangle.h (enum demangle_component_type): Add
DEMANGLE_COMPONENT_INITIALIZER_LIST, DEMANGLE_COMPONENT_NULLARY.
libiberty/
* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_NULLARY and
DEMANGLE_COMPONENT_INITIALIZER_LIST.
(d_make_comp): Likewise. Allow null right arg for
DEMANGLE_COMPONENT_TRINARY_ARG2.
(cplus_demangle_operators): Adjust new/delete; add .*, :: and throw.
(d_template_args, d_template_arg): Handle 'J' for argument packs.
(d_exprlist): Add terminator parm.
(d_expression, d_print_comp): Handle initializer lists, nullary
expressions, prefix/suffix operators, and new.
(d_print_subexpr): Avoid parens around DEMANGLE_COMPONENT_QUAL_NAME
and DEMANGLE_COMPONENT_INITIALIZER_LIST.
* testsuite/demangle-expected: Add tests.
From-SVN: r182970
2012-01-06 16:39:43 -05:00
François Dumont
f7d6ad0a5c
hashtable_policy.h (_Hashtable_base<>::_M_eq()): protected rather than private, use it...
...
2012-01-05 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
protected rather than private, use it...
* include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
* testsuite/23_containers/unordered_set/observers.cc: New.
* testsuite/23_containers/unordered_multiset/observers.cc: New.
* testsuite/23_containers/unordered_map/observers.cc: New.
* testsuite/23_containers/unordered_multimap/observers.cc: New.
From-SVN: r182928
2012-01-05 20:59:17 +00:00
Paolo Carlini
2b59b5284f
re PR c++/51738 (C++11 initializer list does not work correctly with operator[])
...
/gcc/cp
2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51738
* parser.c (cp_parser_postfix_open_square_expression): Handle
postfix-expression [ braced-init-list ].
/gcc/testsuite
2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51738
* g++.dg/cpp0x/initlist-postfix-open-square.C: New.
/libstdc++-v3
2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51738
* testsuite/23_containers/map/element_access/39901.cc: New.
From-SVN: r182856
2012-01-03 20:25:16 +00:00
Paolo Carlini
f32fd5aaec
re PR libstdc++/51711 (regex.h contains incorrect code)
...
2011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/51711
* include/bits/regex.h (regex_replace): Fix thinko.
* testsuite/28_regex/algorithms/regex_replace/char/51711.cc: New.
* testsuite/28_regex/algorithms/regex_replace/wchar_t/51711.cc:
Likewise.
From-SVN: r182740
2011-12-30 11:40:37 +00:00
François Dumont
a188284c61
re PR libstdc++/51608 ([C++11] Unordered containers end(size_type) isn't constant time)
...
2011-12-29 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/51608
* include/bits/hashtable_policy.h (_Equal_helper<>): New, change the
way the _Equal functor is used depending on whether hash code is
cached or not.
(_Ebo_helper<>): New helper type to introduce EBO when possible.
(_Hash_code_base): Use _Ebo_helper to limit memory footprint. Move
_Equal functor management...
(_Hashtable_base): ...here, new, use _Equal_helper.
(_Local_iterator_base<>, _Locale_iterator<>, _Locale_const_iterator<>):
New, use _Hash_code_base, implementation of...
* include/bits/hashtable.h (_Hashtable<>::local_iterator,
_Hashtable<>::const_local_iterator): ...those. Add static assertions
checking that some functors are empty depending on whether hash code
is cache or not.
(_Hashtable<>::_M_bucket_index): New overloads using current bucket
count, use through out the _Hastable<> implementation.
* include/bits/unordered_set.h (__unordered_set<>,
__unordered_multiset<>): Cache hash code iff hash functor is not
empty and not final.
* include/bits/unordered_map.h (__unordered_map<>,
__unordered_multimap<>): Likewise.
* include/debug/unordered_map
(unordered_map<>::_S_to_local, unordered_multimap<>::_S_to_local):
Adapt to match new local iterator implementation.
* include/debug/unordered_set (unordered_set<>::_S_to_local,
unordered_multiset<>::_S_to_local): Likewise.
* include/profile/unordered_map (unordered_map<>::_M_profile_destruct,
unordered_multimap<>::_M_profile_destruct): Enhance thanks to usage of
local iterators.
* include/profile/unordered_set (unordered_set<>::_M_profile_destruct,
unordered_multiset<>::_M_profile_destruct): Likewise.
* testsuite_files/23_containers/unordered_set/instantiation_neg.cc:
Fix error line.
* testsuite_files/23_containers/unordered_set/final_hash.cc: New.
* testsuite_files/23_containers/unordered_multiset/final_hash.cc: New.
* testsuite_files/23_containers/unordered_map/final_hash.cc: New.
* testsuite_files/23_containers/unordered_multimap/final_hash.cc: New.
From-SVN: r182727
2011-12-29 17:58:51 +00:00
Jonathan Wakely
7a37d6eaff
weak_ptr_expired.cc: Modify to PASS instead of XFAIL.
...
* testsuite/tr1/2_general_utilities/shared_ptr/cons/
weak_ptr_expired.cc: Modify to PASS instead of XFAIL.
From-SVN: r182661
2011-12-23 17:31:00 +00:00
Jonathan Wakely
7bde813394
re PR libstdc++/48362 (pretty printer fails for zero-size std::tuple<>)
...
PR libstdc++/48362
* testsuite/libstdc++-prettyprinters/48362.cc: New.
From-SVN: r182632
2011-12-22 18:58:15 +00:00
Jonathan Wakely
d8ab827382
re PR libstdc++/51365 (cannot use final empty class in std::tuple)
...
PR libstdc++/51365
* include/std/tuple (_Tuple_impl): Check __is_final as well as
is_empty.
* testsuite/20_util/tuple/51365.cc: New.
From-SVN: r182523
2011-12-20 09:09:50 +00:00
Benjamin Kosnik
31785b29ee
search_n.cc: Disambiguate local variable.
...
2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/performance/25_algorithms/search_n.cc: Disambiguate
local variable.
From-SVN: r182510
2011-12-19 23:29:14 +00:00
Paolo Carlini
92637e93ed
re PR libstdc++/51558 (Declaration of unspecialized std::hash<_Tp>::operator()(_Tp) turns compile-time errors into link-time errors)
...
2011-12-15 Paolo Carlini <paolo.carlini@oracle.com>
Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/51558
* include/bits/functional_hash.h (struct hash): Add static_assert.
* src/compatibility-c++0x.cc: Adjust compatibility definitions.
* testsuite/23_containers/unordered_map/erase/51142.cc: Adjust.
* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r182392
2011-12-15 22:15:21 +00:00
Benjamin Kosnik
faf81b1a18
9780-2.cc: Add test for "C" locale, add sanity checks in case of grouping.
...
2011-12-15 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C"
locale, add sanity checks in case of grouping.
From-SVN: r182385
2011-12-15 19:02:51 +00:00
Benjamin Kosnik
7897a1c029
user.cfg.in: Add macros, directories.
...
2011-12-10 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Add macros, directories.
* include/bits/locale_classes.h: Remove doxygen warnings, fix markup.
* include/bits/locale_classes.tcc: Same.
* include/bits/shared_ptr.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_numeric.h: Same.
* include/debug/safe_base.h: Same.
* include/parallel/equally_split.h: Same.
* include/std/bitset: Same.
* include/std/complex: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/tr2/dynamic_bitset: Same.
* scripts/run_doxygen: Remove munging for names that no longer exist.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust line numbers.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
From-SVN: r182189
2011-12-10 15:33:06 +00:00
François Dumont
9b81593bbc
hashtable.h (_Hashtable<>::emplace, [...]): Add.
...
2011-12-09 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable.h (_Hashtable<>::emplace,
_Hashtable<>::emplace_hint): Add.
* include/debug/unordered_set (unordered_set<>::emplace,
unordered_set<>::emplace_hint, unordered_multiset<>::emplace,
unordered_multiset<>::emplace_hint): Add.
* include/profile/unordered_set: Likewise.
* include/debug/unordered_map (unordered_map<>::emplace,
unordered_map<>::emplace_hint, unordered_multimap<>::emplace,
unordered_multimap<>::emplace_hint): Add.
* include/profile/unordered_map: Likewise.
* testsuite/23_containers/unordered_map/modifiers/emplace.cc: New.
* testsuite/23_containers/unordered_multimap/modifiers/emplace.cc:
New.
* testsuite/23_containers/unordered_set/modifiers/emplace.cc: New.
* testsuite/23_containers/unordered_multiset/modifiers/emplace.cc:
New.
* testsuite/util/testsuite_container_traits.h
(traits_base::has_emplace): Add and defined as std::true_type for
unordered containers.
* testsuite/util/exception/safety.h (emplace, emplace_hint): Add and
use them in basic_safety exception test case.
* doc/xml/manual/status_cxx2011.xml: Update unordered containers
status.
From-SVN: r182174
2011-12-09 20:01:04 +00:00
Paolo Carlini
8535715d0f
re PR libstdc++/51438 (std::exception and derived classes are not compatible with std::nested_exception and C++11 in general)
...
2011-12-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/51438
* libsupc++/nested_exception.h (nested_exception::~nested_exception):
Declare noexcept.
* libsupc++/nested_exception.cc: Adjust.
* testsuite/18_support/nested_exception/51438.cc: New.
* testsuite/18_support/nested_exception/throw_with_nested.cc: Adjust.
* testsuite/18_support/nested_exception/rethrow_if_nested.cc:
Likewise.
* src/shared_ptr.cc: Use noexcept where appropriate.
* include/std/system_error: Likewise.
* include/std/functional: Likewise.
* include/bits/shared_ptr_base.h: Likewise.
* src/stdexcept.cc: Use _GLIBCXX_USE_NOEXCEPT where appropriate.
* include/std/stdexcept: Likewise.
* libsupc++/bad_cast.cc: Likewise.
* libsupc++/bad_typeid.cc: Likewise.
* libsupc++/eh_exception.cc: Likewise.
* libsupc++/typeinfo: Likewise.
* libsupc++/exception: Likewise.
* libsupc++/eh_ptr.cc: Likewise.
* libsupc++/bad_alloc.cc: Likewise.
* libsupc++/exception_ptr.h: Likewise.
* include/std/chrono: Use noexcept where appropriate.
* src/chrono.cc: Likewise.
From-SVN: r182064
2011-12-06 20:03:25 +00:00
Jonathan Wakely
62b547b5f6
re PR libstdc++/51183 (pair piecewise_construct_t constructor copies)
...
2011-12-06 Jonathan Wakely <jwakely.gcc@gmail.com>
Chris Jefferson <chris@bubblescope.net>
PR libstdc++/51183
* include/std/stl_pair.h (pair<>::__cons, pair<>::__do_cons): Remove.
(pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Only declare.
(pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)):
Declare.
* include/std/tuple (pair<>::__cons, pair<>::__do_cons): Remove.
(pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)):
Define.
(pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Define,
delegating to the latter.
* testsuite/20_util/pair/piecewise2.cc: New.
Co-Authored-By: Chris Jefferson <chris@bubblescope.net>
From-SVN: r182054
2011-12-06 15:13:04 +00:00
Jonathan Wakely
13901e4b28
type_traits: Doxygen improvements.
...
* include/std/type_traits: Doxygen improvements.
* include/bits/move.h: Likewise.
* include/tr1/type_traits: Likewise.
* include/tr2/type_traits: Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line numbers
* testsuite/20_util/forward/c_neg.cc: Likewise.
* testsuite/20_util/forward/f_neg.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r181993
2011-12-04 16:53:17 +00:00
Markus Trippelsdorf
e13afbace1
stl_heap.h (pop_heap): Check for non-empty range in overload taking a predicate.
...
* include/bits/stl_heap.h (pop_heap): Check for non-empty range in
overload taking a predicate.
* testsuite/25_algorithms/pop_heap/empty2_neg.cc: New.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r181987
2011-12-04 13:21:53 +00:00
Jonathan Wakely
a8028a3ee8
macros.h (__glibcxx_check_non_empty_range): Define.
...
* include/debug/macros.h (__glibcxx_check_non_empty_range): Define.
* include/debug/debug.h (__glibcxx_requires_non_empty_range): Define.
* include/debug/formatter.h (__msg_non_empty_range): Add.
* src/debug.cc: Message text for __msg_non_empty_range.
* include/bits/stl_heap.h (pop_heap): Check for non-empty range.
* testsuite/25_algorithms/pop_heap/empty_neg.cc: New.
From-SVN: r181970
2011-12-03 15:35:35 +00:00
Benjamin Kosnik
a152e96f01
acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove size-specific macros.
...
2011-11-30 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove
size-specific macros. _GLIBCXX_ATOMIC_BUILTINS_1,
_GLIBCXX_ATOMIC_BUILTINS_2, _GLIBCXX_ATOMIC_BUILTINS_4,
_GLIBCXX_ATOMIC_BUILTINS_8. Use _GLIBCXX_ATOMIC_BUILTINS to
indicate use of C++11 atomic builtins.
* config.h.in: Regenerate.
* configure: Regenerate.
* include/Makefile.am (bits_sup_headers): Add atomic_lockfree_defines.h.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Compile C++11 support with -std=gnu++0x.
* libsupc++/Makefile.in: Regenerate.
* include/bits/atomic_base.h: Move lock-free property macros...
* libsupc++/atomic_lockfree_defines.h: ...here.
* include/std/future: Use C++11 macros.
* libsupc++/eh_ptr.cc: Same.
* libsupc++/eh_throw.cc: Same.
* libsupc++/exception: Same.
* libsupc++/exception_ptr.h: Same.
* libsupc++/guard.cc: Same.
* libsupc++/nested_exception.cc: Same.
* libsupc++/nested_exception.h: Same.
* src/future.cc: Same.
* include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS.
* doc/doxygen/user.cfg.in
* doc/xml/manual/concurrency_extensions.xml
* testsuite/18_support/exception_ptr/lifespan.cc
* testsuite/lib/libstdc++.exp
From-SVN: r181869
2011-12-01 02:20:32 +00:00
François Dumont
40207762a8
hashtable.h (_Hashtable<>::_M_rehash): Remove code useless now that the hashtable implementation put the hash code in...
...
2011-11-29 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code
useless now that the hashtable implementation put the hash code in
cache if the hash functor throws.
* testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by
checking also distance between begin and end iterators to validate
underlying data model.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuire/23_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/2.cc: New.
* testsuite/23_containers/unordered_multimap/erase/2.cc: New.
From-SVN: r181799
2011-11-29 07:45:58 +00:00
Andrew MacLeod
62bad7cd05
c-family
...
* c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
predefines in one place. Add LOCK_FREE predefines.
(c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
new func.
libstdc++-v3
* include/bits/atomic_base.h (ATOMIC_*_LOCK_FREE): Use new cpp
predefined macros.
* testsuite/29_atomics/headers/atomic/macros.cc: Add BOOL and POINTER
macro checks. Check for expected compile time values.
From-SVN: r181784
2011-11-28 20:28:23 +00:00
Paolo Carlini
1a30353af8
re PR libstdc++/51288 ([C++0x] get_money implementation is missing the sentry object (does not skip leading whitespace))
...
2011-11-28 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/51288
* include/std/iomanip (get_money, put_money): Use sentry.
* testsuite/27_io/manipulators/extended/get_money/char/51288.cc: New.
* testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
Likewise.
From-SVN: r181775
2011-11-28 13:24:23 +00:00