https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87061

--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Fri Oct 12 13:04:38 2018
New Revision: 265098

URL: https://gcc.gnu.org/viewcvs?rev=265098&root=gcc&view=rev
Log:
Fix experimental::pmr typedefs and add tests

The typedefs in <experimental/regex> and <experimental/string> don't
need to be in the __cxx11 namespace, because they are only aliases and
so will have the same mangled name as the underlying types.

Backport from mainline
2018-08-22  Jonathan Wakely  <jwak...@redhat.com>

        PR libstdc++/87061
        * include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI]
        (experimental::pmr::match_results, experimental::pmr::cmatch)
        (experimental::pmr::smatch, experimental::pmr::wcmatch)
        (experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI,
        because COW strings don't support C++11 allocator model.
        * include/experimental/string [!_GLIBCXX_USE_CXX11_ABI]
        (experimental::pmr::basic_string, experimental::pmr::string)
        (experimental::pmr::u16string, experimental::pmr::u32string)
        (experimental::pmr::wstring): Likewise.

Backport from mainline
2018-08-15  Jonathan Wakely  <jwak...@redhat.com>

        * include/experimental/regex: Remove begin/end macros for namespace.
        * include/experimental/string: Likewise.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc:
        New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_forward_list.cc: New test.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc:
        New test.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc:
        New test.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc:
        New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_multimap.cc: New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_multiset.cc: New test.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc:
        New test.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
        New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_unordered_map.cc: New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_unordered_multimap.cc: New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_unordered_multiset.cc: New test.
        * testsuite/experimental/polymorphic_allocator/
        pmr_typedefs_unordered_set.cc: New test.
        * testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc:
        New test.

Added:
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_forward_list.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multimap.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_multiset.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_map.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multimap.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_multiset.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_unordered_set.cc
   
branches/gcc-6-branch/libstdc++-v3/testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc
Modified:
    branches/gcc-6-branch/libstdc++-v3/ChangeLog
    branches/gcc-6-branch/libstdc++-v3/include/experimental/regex
    branches/gcc-6-branch/libstdc++-v3/include/experimental/string

Reply via email to