On 26/11/16 16:27 -0800, Tim Shen wrote:
@@ -235,23 +242,86 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
      _StrTransT
      _M_transform(_CharT __ch) const
      {
-       return _M_transform_impl(__ch, typename integral_constant<bool,
-                                __collate>::type());
+       _StrTransT __str = _StrTransT(1, __ch);

I know the copy will be elided, but this could be:

        _StrTransT __str(1, __ch);

Not a big deal though.

diff --git a/libstdc++-v3/include/bits/shared_ptr_base.h 
b/libstdc++-v3/include/bits/shared_ptr_base.h
index 953aa87..2fb70b7 100644
--- a/libstdc++-v3/include/bits/shared_ptr_base.h
+++ b/libstdc++-v3/include/bits/shared_ptr_base.h
@@ -1000,7 +1000,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
      element_type&
      operator*() const noexcept
      {
-       __glibcxx_assert(_M_ptr != nullptr);
+       __glibcxx_assert(_M_get() != nullptr);
        return *_M_get();
      }

Oops, thanks, but let's fix this separately (I'll do it now) so the
rest of the patch only touches regex stuff.

diff --git a/libstdc++-v3/testsuite/28_regex/traits/char/icase.cc 
b/libstdc++-v3/testsuite/28_regex/traits/char/icase.cc
new file mode 100644
index 0000000..6b2d9ee
--- /dev/null
+++ b/libstdc++-v3/testsuite/28_regex/traits/char/icase.cc
@@ -0,0 +1,75 @@
+// { dg_do run }
+// { dg-do run { target c++11 } }

The first dg-do should be removed.

OK for trunk with those changes, thanks.


Reply via email to