+#if !wxUSE_UTF8_LOCALE_ONLY
+ void wxDoLogTraceWchar(wxTraceMask mask, const wxChar *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogTrace(mask, format, argptr);
+ va_end(argptr);
+ }
+#endif // !wxUSE_UTF8_LOCALE_ONLY
+
+#if wxUSE_UNICODE_UTF8
+ void wxDoLogTraceUtf8(wxTraceMask mask, const char *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogTrace(mask, format, argptr);
+ va_end(argptr);
+ }
+#endif // wxUSE_UNICODE_UTF8
+
+#ifdef __WATCOMC__
+ // workaround for http://bugzilla.openwatcom.org/show_bug.cgi?id=351
+ void wxDoLogTraceWchar(int mask, const wxChar *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogTrace(mask, format, argptr);
+ va_end(argptr);
+ }
+
+ void wxDoLogTraceWchar(const char *mask, const wxChar *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogTrace(mask, format, argptr);
+ va_end(argptr);
+ }
+
+ void wxDoLogTraceWchar(const wchar_t *mask, const wxChar *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogTrace(mask, format, argptr);
+ va_end(argptr);
+ }
+
+ void wxVLogTrace(int mask, const wxString& format, va_list argptr)
+ { wxVLogTrace((wxTraceMask)mask, format, argptr); }
+ void wxVLogTrace(const char *mask, const wxString& format, va_list argptr)
+ { wxVLogTrace(wxString(mask), format, argptr); }
+ void wxVLogTrace(const wchar_t *mask, const wxString& format, va_list argptr)
+ { wxVLogTrace(wxString(mask), format, argptr); }
+#endif // __WATCOMC__
+