]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/xlocale.cpp
Compilation fixes for wx{X11,GTK1,Motif} after making ref data non copyable.
[wxWidgets.git] / src / common / xlocale.cpp
index 96c8a558caa48b79420cad5eca08c6de82d1280e..b1c08bade9cb215dfa0c2a249f563af9e3203350 100644 (file)
@@ -32,6 +32,7 @@
 #include "wx/xlocale.h"
 
 #include <errno.h>
+#include <locale.h>
 
 // ----------------------------------------------------------------------------
 // module globals
@@ -76,7 +77,9 @@ wxXLocale& wxXLocale::GetCLocale()
 {
     if ( !gs_cLocale )
     {
-        gs_cLocale = new wxXLocale(static_cast<wxXLocaleCTag *>(NULL));
+        // NOTE: bcc551 has trouble doing static_cast with incomplete
+        //       type definition. reinterpret_cast used as workaround
+        gs_cLocale = new wxXLocale( reinterpret_cast<wxXLocaleCTag *>(NULL) );
     }
 
     return *gs_cLocale;
@@ -153,7 +156,7 @@ void wxXLocale::Init(const char *loc)
             m_locale = newlocale(LC_ALL_MASK, buf2.c_str(), NULL);
         }
     }
-    
+
     // TODO: wxLocale performs many more manipulations of the given locale
     //       string in the attempt to set a valid locale; reusing that code
     //       (changing it to take a generic wxTryLocale callback) would be nice
@@ -194,7 +197,7 @@ void wxXLocale::Free()
 #define CTYPE_UPPER 0x0200
 #define CTYPE_XDIGIT 0x0400
 
-static unsigned int gs_lookup[] =
+static const unsigned int gs_lookup[] =
 {
     0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
     0x0004, 0x0104, 0x0104, 0x0104, 0x0104, 0x0104, 0x0004, 0x0004,
@@ -313,7 +316,7 @@ double wxStrtod_l(const char* str, char **endptr, const wxXLocale& loc)
 }
 
 long wxStrtol_l(const wchar_t* str, wchar_t **endptr, int base, const wxXLocale& loc)
-{ 
+{
     IMPLEMENT_STRTOX_L_START
     long ret = wxStrtol(str, endptr, base);
     IMPLEMENT_STRTOX_L_END