diff --git a/modules/utfcpp b/modules/utfcpp index c3f9261e..944ef056 160000 --- a/modules/utfcpp +++ b/modules/utfcpp @@ -1 +1 @@ -Subproject commit c3f9261eb8e793fa6c6a62309d3a3942ee03486a +Subproject commit 944ef0561ddcd33eb4fd94934538458b2b2de252 diff --git a/sources/3rdparty/utfcpp/utf8/checked.h b/sources/3rdparty/utfcpp/utf8/checked.h index 0567b504..648636e4 100644 --- a/sources/3rdparty/utfcpp/utf8/checked.h +++ b/sources/3rdparty/utfcpp/utf8/checked.h @@ -263,11 +263,16 @@ namespace utf8 // The iterator class template - class iterator : public std::iterator { + class iterator { octet_iterator it; octet_iterator range_start; octet_iterator range_end; public: + typedef uint32_t value_type; + typedef uint32_t* pointer; + typedef uint32_t& reference; + typedef std::ptrdiff_t difference_type; + typedef std::bidirectional_iterator_tag iterator_category; iterator () {} explicit iterator (const octet_iterator& octet_it, const octet_iterator& rangestart, diff --git a/sources/3rdparty/utfcpp/utf8/unchecked.h b/sources/3rdparty/utfcpp/utf8/unchecked.h index def00099..0e1b51cc 100644 --- a/sources/3rdparty/utfcpp/utf8/unchecked.h +++ b/sources/3rdparty/utfcpp/utf8/unchecked.h @@ -217,9 +217,14 @@ namespace utf8 // The iterator class template - class iterator : public std::iterator { + class iterator { octet_iterator it; public: + typedef uint32_t value_type; + typedef uint32_t* pointer; + typedef uint32_t& reference; + typedef std::ptrdiff_t difference_type; + typedef std::bidirectional_iterator_tag iterator_category; iterator () {} explicit iterator (const octet_iterator& octet_it): it(octet_it) {} // the default "big three" are OK