compilation fix for STL implementations that use (const) char* for std::string iterators

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík 2007-05-13 00:17:32 +00:00
parent 6972616433
commit bfb6847df6
2 changed files with 13 additions and 4 deletions

View File

@ -2863,12 +2863,19 @@ inline const wchar_t* wxCStrData::AsWChar() const
}
#endif // wxUSE_UNICODE_WCHAR
#if !wxUSE_UNICODE || wxUSE_UTF8_LOCALE_ONLY
#if !wxUSE_UNICODE
inline const char* wxCStrData::AsChar() const
{
return m_str->wx_str() + m_offset;
}
#endif // !wxUSE_UNICODE
#if wxUSE_UTF8_LOCALE_ONLY
inline const char* wxCStrData::AsChar() const
{
return wxStringOperations::AddToIter(m_str->wx_str(), m_offset);
}
#endif // !wxUSE_UNICODE
#endif // wxUSE_UTF8_LOCALE_ONLY
inline const wxCharBuffer wxCStrData::AsCharBuf() const
{
@ -2898,7 +2905,11 @@ inline wxString wxCStrData::AsString() const
inline const wxStringCharType *wxCStrData::AsInternal() const
{
#if wxUSE_UNICODE_UTF8
return wxStringOperations::AddToIter(m_str->wx_str(), m_offset);
#else
return m_str->wx_str() + m_offset;
#endif
}
inline wxUniChar wxCStrData::operator*() const

View File

@ -40,8 +40,6 @@ struct WXDLLIMPEXP_BASE wxStringOperationsWchar
{ return i + n; }
static wxStringImpl::const_iterator AddToIter(const wxStringImpl::const_iterator& i, int n)
{ return i + n; }
static const wxChar* AddToIter(const wxChar *i, int n)
{ return i + n; }
// returns distance of the two iterators in Unicode characters
static int DiffIters(const wxStringImpl::iterator& i1,