summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/testsuite
Commit message (Collapse)AuthorAgeFilesLines
...
* 2013-09-02 Tim Shen <timshen91@gmail.com>timshen2013-09-027-5/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | * regex_automaton.h: Rearrange _NFA's layout. * include/bits/regex_compiler.h: Add _AnyMatcher and _CharMatcher. Rearrange _BracketMatcher's layout. (_BracketMatcher<>::_M_add_char): Use set instead of vector for _M_char_set. (_BracketMatcher<>::_M_add_collating_element): Likewise. (_BracketMatcher<>::_M_make_range): Likewise. * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom): Use apropriate constructors of matchers above. * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202189 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-30 François Dumont <fdumont@gcc.gnu.org>fdumont2013-08-301-0/+35
| | | | | | | | | | | | PR libstdc++/58148 * include/debug/functions.h (__foreign_iterator_aux4): Use sequence const_pointer as common type to compare pointers. Add a fallback overload in case pointers cannot be cast to sequence const_pointer. * testsuite/23_containers/vector/modifiers/insert/58148.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202121 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-29 Tim Shen <timshen91@gmail.com>timshen2013-08-292-0/+101
| | | | | | | | | | | | | | | | | | | | | * include/bits/regex.h (basic_regex<>::assign): Don't lose _M_traits. (regex_iterator<>::regex_iterator): Return nullptr when regex_search failed. (regex_token_iterator<>::_M_end_of_seq): Should be defined true when _M_result is(not isn't) nullptr. * include/bits/regex_compiler.h: Store _Compiler::_M_traits by reference instead of by value. * include/bits/regex_executor.h (_DFSExecutor<>::_DFSExecutor): Add _M_traits to _DFSExecutor. * include/bits/regex_executor.tcc (__get_executor<>): Pass traits to _DFSExecutor too. * testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc: New. * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/ wstring_02.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202082 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-26 Tim Shen <timshen91@gmail.com>timshen2013-08-275-0/+250
| | | | | | | | | | | | | | | | | | | | | | * include/Makefile.am: Add regex_scanner.{h,tcc}. * include/Makefile.in: Regenerate. * include/bits/regex.h (match_search): Handle the `__first == __last` situation correctly. * include/bits/regex_compiler.h: Move _Scanner... * include/bits/regex_scanner.h: ...to here. New. * include/bits/regex_compiler.tcc: Move _Scanner... * include/bits/regex_scanner.tcc: ...to here, too. New. * include/bits/regex_executor.tcc: Use value instead of reference for submatch. * include/std/regex: Add regex_scanner.h * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: New. * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/cstring_hex.cc: New. * testsuite/28_regex/algorithms/regex_match/ecma/empty_range.cc: New. * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202015 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-22 Tim Shen <timshen91@gmail.com>timshen2013-08-221-0/+58
| | | | | | | | | | | | * include/bits/regex.h: Executor caller. * include/bits/regex_executor.h: Fix empty grouping problem. * include/bits/regex_executor.tcc: Same. * testsuite/28_regex/algorithms/regex_match/ecma/cstring_emptygroup.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201914 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-20 Phil Muldoon <pmuldoon@redhat.com>pmuldoon2013-08-201-1/+35
| | | | | | | | | | | | | | | PR libstdc++/53477 http://sourceware.org/bugzilla/show_bug.cgi?id=15195 * python/libstdcxx/v6/printers.py (Printer.__call__): If a value is a reference, fetch referenced value. (RxPrinter.invoke): Ditto. * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add -O0 flag. Add referenced value tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201888 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-18 Tim Shen <timshen91@gmail.com>timshen2013-08-181-0/+78
| | | | | | | | | | | | * include/bits/regex_automaton.h: _S_opcode_backref. * include/bits/regex_automaton.tcc: Backref automaton support. * include/bits/regex_compiler.tcc: Parsing support. * include/bits/regex_executor.h: Add _M_traits for _DFSExecutor. * include/bits/regex_executor.tcc: Add _S_opcode_backref support. * testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201825 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-14 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-08-154-0/+158
| | | | | | | | | | | | | | | | PR libstdc++/58163 * include/bits/basic_string.h (basic_string<>::operator[]): Fix _GLIBCXX_DEBUG_PEDASSERT check vs C++11. * include/ext/vstring.h: Likewise. * testsuite/21_strings/basic_string/element_access/char/58163.cc: New. * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc: Likewise. * testsuite/ext/vstring/element_access/char/58163.cc: Likewise. * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201755 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-08 François Dumont <fdumont@gcc.gnu.org>fdumont2013-08-082-2/+2
| | | | | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h (_Hashtable_alloc): New. (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than _Hashtable. (_Before_begin<>): Remove. * include/bits/hashtable.h (_Hashtable): Inherit from _Hashtable_alloc and adapt. Restore _M_before_begin field. * src/c++11/hashtable_c++0x.cc: Add ext/alloc_traits.h include. * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt access to hashtable before begin. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Adapt dg-error line number. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201592 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-07 Tim Shen <timshen91@gmail.com>timshen2013-08-071-6/+4
| | | | | | | | | | | | | | | | | | | | * include/Makefile.am: Adjust to new files. * include/Makefile.in: Regenerate. * include/bits/regex.h: Adjust to new interfaces. * include/bits/regex_automaton.h: New. * include/bits/regex_automaton.tcc: New. * include/bits/regex_compiler.h: Adjust to new files. * include/bits/regex_compiler.tcc: New. * include/bits/regex_constants.h: Tail spaces. * include/bits/regex_error.h: Likewise. * include/bits/regex_executor.h: New. * include/bits/regex_executor.tcc: New. * include/std/regex: Adjust to new files. * testsuite/28_regex/algorithms/regex_match/extended/ string_dispatch_01.cc: Adjust to new interfaces. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201573 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-07 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-08-0726-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/58098 * include/bits/random.h (cauchy_distribution<>::min, extreme_value_distribution<>::min, normal_distribution<>::min, student_t_distribution<>::min): Fix. * include/ext/random (normal_mv_distribution<>::min): Likewise. * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc: Adjust. testsuite/26_numerics/random/cauchy_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/extreme_value_distribution/cons/ parms.cc: Likewise. testsuite/26_numerics/random/extreme_value_distribution/cons/ default.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/normal_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc: Likewise. * testsuite/26_numerics/random/student_t_distribution/cons/default.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise. * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise. * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc: Minor tweak. * testsuite/26_numerics/random/exponential_distribution/cons/default.cc: Likewise. * testsuite/ext/von_mises_distribution/*: Move to... * testsuite/ext/random/von_mises_distribution/*: ... here. * testsuite/ext/triangular_distribution/*: Move to... * testsuite/ext/random/triangular_distribution/*: ... here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201562 138bc75d-0d04-0410-961f-82ee72b054a4
* Commit the vtable verification feature. This feature is designed toctice2013-08-074-3/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | detect, at run time, if/when the vtable pointer in a C++ object has been corrupted, before allowing virtual calls through that pointer. If pointer corruption is detected, execution of the program is halted. libstdc++-v3 ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> * fragment.am: Add XTEMPLATE_FLAGS. * configure.ac: Add definitions for --enable-vtable-verify. * acinclude.m4: Add --enable-vtable-verify and --disable-vtable-verify; define --enable-vtable-verify; define VTV_CXXFLAGS, VTV_PCH_CXXFLAGS and VTV_CXXLINKFLAGS. * config/abi/pre/gnu.ver: Export symbols for vtable verification. * libsupc++/Makefile.am: Define vtv_sources and add it to libsupc___la_SOURCES and libsupc__convenience_la_SOURCES. * libsupc++/vtv_stubs.cc: New file. * include/Makefile.am: Add VTV_PCH_CXXFLAGS to PCHFLAGS. * src/Makefile.am: Add VTV_CXXFLAGS to AM_CXXFLAGS; add VTV_CXXLINKFLAGS to CXXLINK. * src/c++98/Makefile.am: Comment out XTEMPLATE_FLAGS; add VTV_CXXFLAGS to AM_CXXFLAGS; add VTV_CXXXLINKFLAGS to CXXLINK. * src/C++11/Makefile.am: Ditto. * doc/xml/manual/configure.xml: Add entry for --enable-vtable-verify. * scripts/testsuite_flags.in: Add cxxvtvflags to Usage; cause cxxvtvflags to use VTV_CXXFLAGS and VTV_CXXLINKFLAGS. * testsuite/lib/libstdc++.exp: Add cxxvtvflags; add code to locate libvtv if --enable-vtable-verify was used; set cxxvtvflags; add cxxvtvflags to cxx_final. * testsuite/18_support/bad_exception/23591_thread-1.c: Add -fvtable-verify=none to compiler flags. * testsuite/17_intro/freestanding.cc: Add -fvtable-verify=none to compiler flags. * configure: Regenerated. * Makefile.in: Regenerated. * python/Makefile.in: Regenerated. * include/Makefile.in: Regenerated. * libsupc++/Makefile.in: Regenerated. * config.h.in: Regenerated. * po/Makefile.in: Regenerated. * src/Makefile.in: Regenerated. * src/c++98/Makefile.in: Regenerated. * src/c++11/Makefile.in: Regenerated. * doc/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. top level ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> * configure.ac: Add target-libvtv to target_libraries; disable libvtv on non-linux systems; add target-libvtv to noconfigdirs; add libsupc++/.libs to C++ library search paths. * configure: Regenerated. * Makefile.def: Add libvtv to target_modules; make libvtv depend on libstdc++ and libgcc. * Makefile.in: Regenerated. include/ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> * vtv-change-permission.h: New file. contrib/ChangeLog: 2013-08-06 Caroline Tice4 <cmtice@google.com> * gcc_update: Add libvtv files. libgcc/ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> config.host (extra_parts): Add vtv_start.o, vtv_end.o vtv_start_preinit.o and vtv_end_preinit.o. configure.ac: Add code to check/set enable_vtable_verify. Makefile.in: Add rules to build vtv_*.o, if enable_vtable_verify is true. vtv_start_preinit.c: New file. vtv_end_preinit.c: New file. vtv_start.c: New file. vtv_end.c: New file. configure: Regenerated. gcc/ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> * gcc.c (VTABLE_VERIFICATION_SPEC): New definition. (LINK_COMMAND_SPEC): Add VTABLE_VERIFICATION_SPEC. * tree-pass.h: Add pass_vtable_verify. * varasm.c (assemble_variable): Add code to properly set the comdat section and name for the .vtable_map_vars section. (assemble_vtyv_preinit_initializer): New function. (default_sectin_type_flags): Make sure .vtable_map_vars section has LINK_ONCE flag. * output.h: Add function decl for assemble_vtv_preinit_initializer. * vtable-verify.c: New file. * vtable-verify.h: New file. * flag-types.h (enum vtv_priority): Defintions for flag_vtable_verify initialiation levels. * timevar.def (TV_VTABLE_VERIFICATION): New definition. * passes.def: Insert pass_vtable_verify. * aclocal.m4: Reorder includes. * doc/invoke.texi: Add documentation for the flags -fvtable-verify=, -fvtv-debug and -fvtv-counts. * config/gnu-user.h (GNU_USER_TARGET_STARTFILE_SPEC): Add vtv_start*.o, as appropriate, if -fvtable-verify=... is used. (GNU_USER_TARGET_ENDFILE_SPEC): Add vtv_end*.o as appropriate, if -fvtable-verify=... is used. * Makefile.in (OBJS): Add vtable-verify.o to list. (vtable-verify.o): Add new build rule. (GTFILES): Add vtable-verify.c to list. * common.opt (fvtable-verify=): New flag. (vtv_priority): Values for fvtable-verify= flag. (fvtv-counts): New flag. (fvtv-debug): New flag. * tree.h (save_vtable_map_decl): New extern function decl. gcc/cp/ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> * Make-lang.in (*CXX_AND_OBJCXX_OBJS): Add vtable-class-hierarchy.o to list. (vtable-class-hierarchy.o): Add build rule. * cp-tree.h (vtv_start_verification_constructor_init_function): New extern function decl. (vtv_finish_verification_constructor_init_function): New extern function decl. (build_vtbl_address): New extern function decl. (get_mangled_vtable_map_var_name): New extern function decl. (vtv_compute_class_hierarchy_transitive_closure): New extern function decl. (vtv_generate_init_routine): New extern function decl. (vtv_save_class_info): New extern function decl. (vtv_recover_class_info): New extern function decl. (vtv_build_vtable_verify_fndecl): New extern function decl. * class.c (finish_struct_1): Add call to vtv_save_class_info if flag_vtable_verify is true. * config-lang.in: Add vtable-class-hierarchy.c to gtfiles list. * vtable-class-hierarchy.c: New file. * mangle.c (get_mangled_vtable_map_var_name): New function. * decl2.c (start_objects): Update function comment. (cp_write_global_declarations): Call vtv_recover_class_info, vtv_compute_class_hierarchy_transitive_closure and vtv_build_vtable_verify_fndecl, before calling finalize_compilation_unit, and call vtv_generate_init_rount after, IFF flag_vtable_verify is true. (vtv_start_verification_constructor_init_function): New function. (vtv_finish_verification_constructor_init_function): New function. * init.c (build_vtbl_address): Remove static qualifier from function. libvtv/ChangeLog: 2013-08-06 Caroline Tice <cmtice@google.com> Initial check-in of new vtable verification feature. * configure.ac : New file. * acinclude.m4 : New file. * Makefile.am : New file. * aclocal.m4 : New file. * configure.tgt : New file. * configure: New file (generated). * Makefile.in: New file (generated). * vtv_set.h : New file. * vtv_utils.cc : New file. * vtv_utils.h : New file. * vtv_malloc.cc : New file. * vtv_rts.cc : New file. * vtv_malloc.h : New file. * vtv_rts.h : New file. * vtv_fail.cc : New file. * vtv_fail.h : New file. * vtv_map.h : New file. * scripts/run-testsuite.sh : New file. * scripts/sum-vtv-counts.c : New file. * testsuite/parts-test-main.h : New file. * testusite/dataentry.cc : New file. * testsuite/temp_deriv.cc : New file. * testsuite/register_pair.cc : New file. * testsuite/virtual_inheritance.cc : New file. * testsuite/field-test.cc : New file. * testsuite/nested_vcall_test.cc : New file. * testsuite/template-list-iostream.cc : New file. * testsuite/register_pair_inserts.cc : New file. * testsuite/register_pair_inserts_mt.cc : New file. * testsuite/event.list : New file. * testsuite/parts-test-extra-parts-views.cc : New file. * testsuite/parts-test-extra-parts-views.h : New file. * testsuite/environment-fail-32.s : New file. * testsuite/parts-test-extra-parts.h : New file. * testsuite/temp_deriv2.cc : New file. * testsuite/dlopen_mt.cc : New file. * testsuite/event.h : New file. * testsuite/template-list.cc : New file. * testsuite/replace-fail.cc : New file. * testsuite/Makefile.am : New file. * testsuite/Makefile.in: New file (generated). * testsuite/mempool_negative.c : New file. * testsuite/parts-test-main.cc : New file. * testsuite/event-private.cc : New file. * testsuite/thunk.cc : New file. * testsuite/event-defintiions.cc : New file. * testsuite/event-private.h : New file. * testsuite/parts-test.list : New file. * testusite/register_pair_mt.cc : New file. * testsuite/povray-derived.cc : New file. * testsuite/event-main.cc : New file. * testsuite/environment.cc : New file. * testsuite/template-list2.cc : New file. * testsuite/thunk_vtable_map_attack.cc : New file. * testsuite/parts-test-extra-parts.cc : New file. * testsuite/environment-fail-64.s : New file. * testsuite/dlopen.cc : New file. * testsuite/so.cc : New file. * testsuite/temp_deriv3.cc : New file. * testsuite/const_vtable.cc : New file. * testsuite/mempool_positive.c : New file. * testsuite/dup_name.cc : New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201555 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-06 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-08-062-2/+2
| | | | | | | Revert the last commit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201525 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-06 François Dumont <fdumont@gcc.gnu.org>fdumont2013-08-062-2/+2
| | | | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h (_Hashtable_alloc): New. (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than _Hashtable. (_Before_begin<>): Remove. * include/bits/hashtable.h (_Hashtable): Inherit from _Hashtable_alloc and adapt. Restore _M_before_begin field. * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt access to hashtable before begin. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Adapt dg-error line number. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201522 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-03 Tim Shen <timshen91@gmail.com>timshen2013-08-032-2/+68
| | | | | | | | | | | | | | | | Implement bracket expression. * include/bits/regex.h: Remove constexpr from "|=", etc. * include/bits/regex_compiler.h: Parse bracket expression. * include/bits/regex_nfa.h: _Comparator and _BracketMatcher(old _RangeMatcher). * include/bits/regex_nfa.tcc: Implement them. * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: from regex_search to regex_match. * testsuite/28_regex/algorithms/regex_match/extended/ cstring_bracket_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201465 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-08-01 François Dumont <fdumont@gcc.gnu.org>fdumont2013-08-017-1/+250
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/57779 * include/debug/formatter.h (_Debug_msg_id): Add __msg_insert_itself_range entry. * include/debug/functions.h (_Insert_range_from_self_is_safe<>): New, indicate container types supporting self range insertion in GNU implementation. (__foreign_iterator): New, check if an iterator points to a given sequence. * include/debug/macros.h (__glibcxx_check_insert_range): Add check using __foreign_iterator. (__gibcxx_check_insert_range_after): Likewise. * include/debug/string (_Insert_range_from_self_is_safe<>): Partially specialized to mark __gnu_debug::basic_string<> as supporting self range insert. * include/debug/list (_Insert_range_from_self_is_safe<>): Partially specialized to mark std::list as supporting self range insert if _GLIBCXX_DEBUG_PEDANTIC is not defined. * include/debug/forward_list (_Insert_range_from_self_is_safe<>): Likewise. * src/c++11/debug.cc (_S_debug_messages): Add __msg_insert_itself_range_entry message. (_Error_formatter::_Parameter::_M_print_description): Display iterator sequence address rather than sequence address when the parameter type is an iterator. (_Error_formatter::_M_print_word): Enhance behavior when displaying a word with an appended '\n'. * testsuite/util/debug/checks.h (check_insert4<>): New. * testsuite/23_containers/deque/debug/insert5_neg.cc: New. * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise. * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise. * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise. * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201416 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/cp/bergner2013-08-011-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | PR c++/54537 * cp-tree.h: Check OVL_USED with OVERLOAD_CHECK. * name-lookup.c (do_nonmember_using_decl): Make sure we have an OVERLOAD before calling OVL_USED. Call diagnose_name_conflict instead of issuing an error without mentioning the conflicting declaration. libstdc++-v3/ PR c++/54537 * include/tr1/cmath: Remove pow(double,double) overload, remove a duplicated comment about DR 550. Add a comment to explain the issue. * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New. gcc/testsuite/ PR c++/54537 * g++.dg/overload/using3.C: New. * g++.dg/overload/using2.C: Adjust. * g++.dg/lookup/using9.C: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201414 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-31 Tim Shen <timshen91@gmail.com>timshen2013-07-313-16/+113
| | | | | | | | | | | | | | | | | | | | Thompson matcher refactored. Fix grouping problem. * include/bits/regex.h: Use a dispatcher _M_get_matcher(). * include/bits/regex_compiler.h: Tweak for auto switching. * include/bits/regex_grep_matcher.h: Class structure. * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson matcher) refactoring. * include/bits/regex_nfa.h: Change _Results's interfaces. * include/std/regex: Includes <map> and <queue>. * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: For both matchers. * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: For both matchers. * testsuite/28_regex/algorithms/regex_match/extended/ string_dispatch_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201391 138bc75d-0d04-0410-961f-82ee72b054a4
* Revert last commit.timshen2013-07-313-113/+16
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201360 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-31 Tim Shen <timshen91@gmail.com>timshen2013-07-313-16/+113
| | | | | | | | | | | | | | | | | | | | Thompson matcher refactored. Fix grouping problem. * include/bits/regex.h: Use a dispatcher _M_get_matcher(). * include/bits/regex_compiler.h: Tweak for auto switching. * include/bits/regex_grep_matcher.h: Class structure. * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson matcher) refactoring. * include/bits/regex_nfa.h: Change _Results's interfaces. * include/std/regex: Includes <map> and <queue>. * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: For both matchers. * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: For both matchers. * testsuite/28_regex/algorithms/regex_match/extended/ string_dispatch_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201358 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-07-301-0/+0
| | | | | | | Revert last commit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201349 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-07-303-113/+16
| | | | | | | Revert last commit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201348 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-30 Tim Shen <timshen91@gmail.com>timshen2013-07-303-16/+113
| | | | | | | | | | | | | | | | | | | | Thompson matcher refactored. Fix grouping problem. * include/bits/regex.h: Use a dispatcher _M_get_matcher(). * include/bits/regex_compiler.h: Tweak for auto switching. * include/bits/regex_grep_matcher.h: Class structure. * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson matcher) refactoring. * include/bits/regex_nfa.h: Change _Results's interfaces. * include/std/regex: Includes <map> and <queue>. * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: For both matchers. * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: For both matchers. * testsuite/28_regex/algorithms/regex_match/extended/string_dispatch_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201334 138bc75d-0d04-0410-961f-82ee72b054a4
* libstdc++-v3/froydnj2013-07-292-0/+82
| | | | | | | | | | | | | * include/std/atomic (compare_exchange_weak, compare_exchange_strong): Add call to __cmpexch_failure_order. * testsuite/util/testsuite_common_types.h (compare_exchange_order_lowering): New generator. * testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201315 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-07-251-3/+5
| | | | | | | | | | * include/std/complex (pow(const complex<>&, int)): Enable in C++11 mode too. * testsuite/26_numerics/complex/dr844.cc: Adjust. * doc/xml/manual/intro.xml: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201253 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-25 Tim Shen <timshen91@gmail.com>timshen2013-07-251-0/+50
| | | | | | | | | | | | Add documents and comments. * include/bits/regex.h: Documents and comments. * include/bits/regex_grep_matcher.h: Likewise. * include/bits/regex_grep_matcher.tcc: Likewise. * testsuite/28_regex/iterators/regex_iterator/char/string_position_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201244 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-24 Tim Shen <timshen91@gmail.com>timshen2013-07-243-2/+103
| | | | | | | | | | | | | | | | | | | Reimplment matcher using Depth-first search(backtracking). PR libstdc++/53622 PR libstdc++/57173 * include/bits/regex.h: regex_match() and regex_search(). * include/bits/regex_cursor.h: Fix _M_set_pos(). * include/bits/regex_grep_matcher.h: add _M_dfs_match(). * include/bits/regex_grep_matcher.tcc: Implement it. * testsuite/28_regex/algorithms/regex_match/extended/string_group_01.cc: New. * testsuite/28_regex/algorithms/regex_match/extended/string_group_02.cc: New. * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: Remove xfail. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201213 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-23 Tim Shen <timshen91@gmail.com>timshen2013-07-234-0/+208
| | | | | | | | | | | | | | | | Implement regex_iterator and regex_token_iterator. * include/bits/regex.h: regex_iterator and regex_token_iterator. * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc: New. * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc: New. * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc: New. * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/string_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201169 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-21 Tim Shen <timshen91@gmail.com>timshen2013-07-211-0/+58
| | | | | | | | | | | | Partially implement regex_search. * include/bits/regex.h: regex_search. * include/bits/regex_grep_matcher.h: _M_search_from_first. * include/bits/regex_grep_matcher.tcc: Implement it. * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201113 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix.mrs2013-07-211-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201103 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-09 Tim Shen <timshen91@gmail.com>emsr2013-07-098-10/+250
| | | | | | | | | | | | | | | | | | | Implement class regex_traits. * include/bits/regex.h: Implement lookup_classname and lookup_collatename; modify isctype; partially implement transform_primary. * testsuite/28_regex/traits/char/isctype.cc: Add more test cases. * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise. * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise. * testsuite/28_regex/traits/char/transform_primary.cc: Likewise. * testsuite/28_regex/traits/wchar_t/isctype.cc: New. * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New. * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New. * testsuite/28_regex/traits/wchar_t/transform_primary.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200818 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-05 François Dumont <fdumont@gcc.gnu.org>fdumont2013-07-052-2/+2
| | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward pattern. (_MoveReuseOrAllocNode): Remove. (_Insert_base): Take a functor defining how the node is generated. * include/bits/hashtable.h: Adapt. (operator=(initializer_list<value_type>)): Reuse node if any. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error 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@200724 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-05 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-07-054-8/+8
| | | | | | | | | | | | | | * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc: Tweak, avoid potential undefined behavior. * testsuite/23_containers/list/modifiers/insert/const_iterator.cc: Likewise. * testsuite/23_containers/vector/bool/modifiers/insert/ const_iterator.cc: Likewise. * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200703 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-04 Veres Lajos <vlajos@gmail.com>redi2013-07-044-4/+4
| | | | | | | | | | | | | | | | | | Jonathan Wakely <jwakely.gcc@gmail.com> * config/locale/generic/codecvt_members.cc: Fix typo. * configure.host: Likewise. * doc/html/manual/policy_data_structures_design.html: Likewise. * doc/xml/manual/policy_data_structures.xml: Likewise. * include/bits/hashtable.h: Likewise. * include/bits/random.h: Likewise. * include/profile/impl/profiler_trace.h: Likewise. * testsuite/23_containers/deque/cons/2.cc: Likewise. * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise. * testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise. * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200681 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-01 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-07-0110-8/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_list.h (list<>::insert(iterator, size_type, const value_type&), list<>::insert(iterator, initializer_list<>), list<>::insert(iterator, _InputIterator, _InputIterator), list<>::splice(iterator, list&&), list<>::splice(iterator, list&), list<>::splice(iterator, list&&, iterator), list<>::splice(iterator, list&, iterator), list<>::splice(iterator, list&&, iterator, iterator), list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11 signatures to take const_iterator(s). * include/bits/list.tcc (list<>::insert(const_iterator, size_type, const value_type&), list<>::insert(const_iterator, _InputIterator, _InputIterator)): Define. * include/ext/vstring.h (__versa_string<>::insert(iterator, size_type, _CharT), __versa_string<>::insert(iterator, _InputIterator, _InputIterator), __versa_string<>::insert(iterator, std::initializer_list<>), __versa_string<>::replace(iterator, iterator, _InputIterator, _InputIterator), __versa_string<>:: replace(iterator, iterator, std::initializer_list<>)): Adjust C++11 signatures to take const_iterator(s). (__versa_string<>::_M_replace_dispatch): Take const_iterators. * include/ext/vstring.tcc: Likewise. * include/debug/list: Adjust. * include/profile/list: Likewise. * testsuite/23_containers/list/operations/splice/const_iterator.cc: New. * testsuite/23_containers/list/modifiers/insert/const_iterator.cc: Extend. * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc: Likewise. * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200580 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-30 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-3011-13/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_deque.h (deque<>::insert(iterator, size_type, const value_type&), deque<>::insert(iterator, initializer_list<>), deque<>::insert(iterator, _InputIterator, _InputIterator)): Adjust C++11 signatures to take a const_iterator. * include/bits/stl_vector.h: Likewise. * include/bits/stl_bvector.h: Likewise. * include/debug/deque: Adjust. * include/debug/vector: Likewise. * include/profile/deque: Likewise. * include/profile/vector: Likewise. * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc: Extend. * testsuite/23_containers/vector/bool/modifiers/insert/ const_iterator.cc: Likewise. * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/vector/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@200571 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-29 François Dumont <fdumont@gcc.gnu.org>fdumont2013-06-294-2/+461
| | | | | | | | | | | | | | | | | | * include/bits/hashtable_policy.h (_Insert_base): Consider hint in insert methods. * include/bits/hashtable.h: Likewise. * testsuite/23_containers/unordered_multimap/insert/hint.cc: New. * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc: New. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error line number. * testsuite/23_containers/unordered_set/ not_default_constructible_hash_neg.cc: Likewise. * doc/xml/manual/containers.xml: Document hinting in unordered containers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200564 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-2822-0/+0
| | | | | | | | | | | | | * testsuite/21_strings/basic_string/operations/*: Move inside testsuite/21_strings/basic_string/operations/data/. * testsuite/21_strings/basic_string/compare/*: Move inside testsuite/21_strings/basic_string/operations/. * testsuite/21_strings/basic_string/find/*: Likewise. * testsuite/21_strings/basic_string/rfind/*: Likewise. * testsuite/21_strings/basic_string/substr/*: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200537 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-2733-0/+0
| | | | | | | | | | | | | | | | | * testsuite/21_strings/basic_string/append/*: Move inside testsuite/21_strings/basic_string/modifiers/. * testsuite/21_strings/basic_string/assign/*: Likewise. * testsuite/21_strings/basic_string/insert/*: Likewise. * testsuite/21_strings/basic_string/replace/*: Likewise. * testsuite/21_strings/basic_string/modifiers/pop_back/char/ pop_back.cc: Rename to 1.cc. * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/ pop_back.cc: Likewise. * testsuite/ext/vstring/assign/*: Move inside testsuite/ext/vstring/modifiers/. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200465 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-2728-77/+330
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/stl_deque.h (deque<>::insert(iterator, const value_type&), deque<>::insert(iterator, value_type&&), deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to take a const_iterator. (deque<>::erase): Simplify. * include/bits/stl_list.h: Likewise. (_List_iterator<>::_M_const_cast): Add. * include/bits/stl_vector.h: Likewise. * include/bits/stl_bvector.h: Likewise. (_Bit_iterator::_M_const_cast): Add. * include/bits/deque.tcc: Adjust definitions. * include/bits/list.tcc: Likewise. * include/bits/vector.tcc: Likewise. * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast): Define trivial version in C++98 mode. * include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT), __versa_string<>::replace(iterator, iterator, const __versa_string&), __versa_string<>::replace(iterator, iterator, const _CharT*, size_type), __versa_string<>::replace(iterator, iterator, const _CharT*), __versa_string<>::replace(iterator, iterator, size_type, _CharT)): Adjust C++11 signatures to take a pair of const_iterators. * include/debug/deque: Adjust. * include/debug/list: Likewise. * include/debug/vector: Likewise. * include/profile/deque: Likewise. * include/profile/list: Likewise. * include/profile/vector: Likewise. (vector<>::emplace): Add. * testsuite/util/exception/safety.h: Update. * testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc: New. * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc: Likewise. * testsuite/23_containers/list/modifiers/emplace/const_iterator.cc: Likewise. * testsuite/23_containers/list/modifiers/insert/const_iterator.cc: Likewise. * testsuite/23_containers/vector/bool/modifiers/insert/ const_iterator.cc: Likewise. * testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc: Likewise. * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc: Likewise. * testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/ ext/vstring/modifiers/erase/char/. * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/ ext/vstring/modifiers/wchar_t/. * testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/ ext/vstring/modifiers/pop_back/char/. * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to testsuite/ext/vstring/modifiers/pop_back/wchar_t/. * 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@200458 138bc75d-0d04-0410-961f-82ee72b054a4
* * typeck2.c (store_init_value): Diagnose a non-constantjason2013-06-271-0/+1
| | | | | | initializer for in-class static. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200450 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-264-0/+4
| | | | | | | | | | | | | * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid spurious fails with check-debug. * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: Likewise. * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise. * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200411 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-251-0/+37
| | | | | | | | | | PR libstdc++/57704 * include/bits/char_traits.h (char_traits<char>::lt): Implement LWG 467. * testsuite/21_strings/char_traits/requirements/char/57704.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200392 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-221-0/+11
| | | | | | | | | | | | | | | PR libstdc++/57674 * include/bits/random.h (binomial_distribution<>::_M_waiting): Add double parameter. * include/bits/random.tcc (binomial_distribution<>::operator() (_UniformRandomNumberGenerator&, const param_type&)): Pass __param._M_q to _M_waiting. (_M_waiting): Adjust. * testsuite/26_numerics/random/binomial_distribution/ operators/values.cc: Add tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200341 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-21 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-211-0/+37
| | | | | | | | | | PR libstdc++/57666 * include/std/valarray (valarray<>::operator=(const _Expr<>&)): Implement correctly C++11 26.6.2.3/1. * testsuite/26_numerics/valarray/dr630-3.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200305 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/57641redi2013-06-181-0/+69
| | | | | | | | | | | * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common functionality to new __timed_mutex_impl mixin. Overload try_lock_until to handle conversion between different clocks. Replace constrained __try_lock_for_impl overloads with conditional increment. * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin. * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200180 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/57263redi2013-06-164-0/+169
| | | | | | | | | | | | * include/bits/forward_list.h (_Fwd_list_base): Convert to/from allocator's pointer type. * include/bits/hashtable.h (_Hashtable): Likewise. * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add. * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New. * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New. * testsuite/23_containers/vector/allocator/ext_ptr.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200136 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/std/shared_mutex: Implement N3659.redi2013-06-1620-0/+1102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/bits/c++14_warning.h: New. * include/Makefile.am: Add new headers. * include/Makefile.in: Regenerate. * testsuite/30_threads/shared_lock/cons/1.cc: New. * testsuite/30_threads/shared_lock/locking/2.cc: New. * testsuite/30_threads/shared_lock/cons/2.cc: New. * testsuite/30_threads/shared_lock/locking/3.cc: New. * testsuite/30_threads/shared_lock/cons/3.cc: New. * testsuite/30_threads/shared_lock/locking/4.cc: New. * testsuite/30_threads/shared_lock/cons/4.cc: New. * testsuite/30_threads/shared_lock/modifiers/1.cc: New. * testsuite/30_threads/shared_lock/cons/5.cc: New. * testsuite/30_threads/shared_lock/modifiers/2.cc: New. * testsuite/30_threads/shared_lock/cons/6.cc: New. * testsuite/30_threads/shared_lock/requirements/ explicit_instantiation.cc: New. * testsuite/30_threads/shared_lock/locking/1.cc: New. * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New. * testsuite/30_threads/shared_mutex/cons/1.cc: New. * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New. * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New. * testsuite/30_threads/shared_mutex/requirements/ standard_layout.cc: New. * testsuite/30_threads/shared_mutex/try_lock/1.cc: New. * testsuite/30_threads/shared_mutex/try_lock/2.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200134 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-15 Paolo Carlini <paolo.carlini@oracle.com>paolo2013-06-142-0/+102
| | | | | | | | | | | PR libstdc++/57619 * include/bits/unordered_map.h (unordered_map<>::insert, unordered_multimap<>::insert): Use std::forward, not std::move. * testsuite/23_containers/unordered_map/insert/57619.C: New. * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200111 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-13 Daniel Krugler <daniel.kruegler@gmail.com>paolo2013-06-1317-35/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/std/type_traits (is_function): Support ref-qualified functions. (is_copy_constructible, is_move_constructible, is_copy_assignable, is_move_assignable, is_nothrow_copy_constructible, is_nothrow_move_constructible, is_nothrow_copy_assignable, is_nothrow_move_assignable): Implement LWG 2196. (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement LWG 2101. (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove, unused. * testsuite/20_util/add_lvalue_reference/value.cc: Extend. * testsuite/20_util/add_rvalue_reference/value.cc: Likewise. * testsuite/20_util/decay/requirements/typedefs.cc: Likewise. * testsuite/20_util/is_assignable/value.cc: Likewise. * testsuite/20_util/is_constructible/value-2.cc: Likewise. * testsuite/20_util/is_copy_assignable/value.cc: Likewise. * testsuite/20_util/is_copy_constructible/value.cc: Likewise. * testsuite/20_util/is_function/value.cc: Likewise. * testsuite/20_util/is_move_assignable/value.cc: Likewise. * testsuite/20_util/is_move_constructible/value.cc: Likewise. * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise. * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise. * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise. * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error line number. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@200080 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud