Update aosp/master libcxx rebase to r263688

Change-Id: Ic3f4fb33a091ff4b7366ab9e6ca8ee99589c5c9f
This commit is contained in:
Dan Austin
2016-05-25 09:17:06 -07:00
1396 changed files with 38992 additions and 11535 deletions

View File

@@ -762,6 +762,7 @@ typedef regex_token_iterator<wstring::const_iterator> wsregex_token_iterator;
#include <memory>
#include <vector>
#include <deque>
#include <cassert>
#include <__undef_min_max>
@@ -960,7 +961,9 @@ _LIBCPP_ALWAYS_INLINE
void __throw_regex_error()
{
#ifndef _LIBCPP_NO_EXCEPTIONS
throw regex_error(_Ev);
throw regex_error(_Ev);
#else
assert(!"regex_error");
#endif
}
@@ -979,6 +982,8 @@ public:
#ifdef __ANDROID__
static const char_class_type __regex_word = 0x8000;
#elif defined(__mips__) && defined(__GLIBC__)
static const char_class_type __regex_word = static_cast<char_class_type>(_ISbit(15));
#else
static const char_class_type __regex_word = 0x80;
#endif
@@ -1054,6 +1059,7 @@ private:
_LIBCPP_INLINE_VISIBILITY
int __regex_traits_value(char __ch, int __radix) const
{return __regex_traits_value(static_cast<unsigned char>(__ch), __radix);}
_LIBCPP_INLINE_VISIBILITY
int __regex_traits_value(wchar_t __ch, int __radix) const;
};
@@ -1276,7 +1282,7 @@ regex_traits<_CharT>::__regex_traits_value(unsigned char __ch, int __radix)
}
template <class _CharT>
inline _LIBCPP_INLINE_VISIBILITY
inline
int
regex_traits<_CharT>::__regex_traits_value(wchar_t __ch, int __radix) const
{
@@ -1739,6 +1745,8 @@ template <class _CharT>
void
__back_ref<_CharT>::__exec(__state& __s) const
{
if (__mexp_ > __s.__sub_matches_.size())
__throw_regex_error<regex_constants::error_backref>();
sub_match<const _CharT*>& __sm = __s.__sub_matches_[__mexp_-1];
if (__sm.matched)
{
@@ -4268,6 +4276,9 @@ basic_regex<_CharT, _Traits>::__parse_atom_escape(_ForwardIterator __first,
if (__first != __last && *__first == '\\')
{
_ForwardIterator __t1 = _VSTD::next(__first);
if (__t1 == __last)
__throw_regex_error<regex_constants::error_escape>();
_ForwardIterator __t2 = __parse_decimal_escape(__t1, __last);
if (__t2 != __t1)
__first = __t2;
@@ -5387,8 +5398,8 @@ match_results<_BidirectionalIterator, _Allocator>::format(_OutputIter __out,
if ('0' <= *__fmt_first && *__fmt_first <= '9')
{
size_t __i = *__fmt_first - '0';
__out = _VSTD::copy(__matches_[__i].first,
__matches_[__i].second, __out);
__out = _VSTD::copy((*this)[__i].first,
(*this)[__i].second, __out);
}
else
{
@@ -5439,8 +5450,8 @@ match_results<_BidirectionalIterator, _Allocator>::format(_OutputIter __out,
++__fmt_first;
__i = 10 * __i + *__fmt_first - '0';
}
__out = _VSTD::copy(__matches_[__i].first,
__matches_[__i].second, __out);
__out = _VSTD::copy((*this)[__i].first,
(*this)[__i].second, __out);
}
else
{