Fix std::ostream::operator<<(wxScopedWCharBuffer)
This never worked correctly as using operator<<() with wchar_t pointer just fell back to the overload for void pointers, i.e. printed out the address of the wide string, which wasn't especially useful, but with C++20 it doesn't even compile, as this overload is explicitly deleted. Fix both problems at once by actually doing something useful for it instead and printing out data in either current encoding or UTF-8 if converting it to the current encoding failed.
This commit is contained in:
@@ -4030,9 +4030,7 @@ namespace std
|
||||
WXDLLIMPEXP_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxString&);
|
||||
WXDLLIMPEXP_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxCStrData&);
|
||||
WXDLLIMPEXP_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxScopedCharBuffer&);
|
||||
#ifndef __BORLANDC__
|
||||
WXDLLIMPEXP_BASE wxSTD ostream& operator<<(wxSTD ostream&, const wxScopedWCharBuffer&);
|
||||
#endif
|
||||
|
||||
#if wxUSE_UNICODE && defined(HAVE_WOSTREAM)
|
||||
|
||||
|
Reference in New Issue
Block a user