#include "wx/ipcbase.h"
 
-IMPLEMENT_CLASS(wxServerBase, wxObject)
-IMPLEMENT_CLASS(wxClientBase, wxObject)
-IMPLEMENT_CLASS(wxConnectionBase, wxObject)
+wxIMPLEMENT_ABSTRACT_CLASS(wxServerBase, wxObject)
+wxIMPLEMENT_ABSTRACT_CLASS(wxClientBase, wxObject)
+wxIMPLEMENT_ABSTRACT_CLASS(wxConnectionBase, wxObject)
 
 wxConnectionBase::wxConnectionBase(void *buffer, size_t bytes)
     : m_buffer((char *)buffer),
 
 {
   // copy constructor would require ref-counted pointer to buffer
-  wxFAIL_MSG( _T("Copy constructor of wxConnectionBase not implemented") );
+  wxFAIL_MSG( wxT("Copy constructor of wxConnectionBase not implemented") );
 }
 
 
 wxConnectionBase::~wxConnectionBase()
 {
   if ( m_deletebufferwhendone )
-    delete m_buffer;
+    delete [] m_buffer;
 }
 
 /* static */
             if ( size )
                 size--;
 
-            s = wxString(wx_static_cast(const char *, data), size);
+            s = wxString(static_cast<const char *>(data), size);
             break;
 
 #if wxUSE_UNICODE
                 size--;
             }
 
-            s = wxString(wx_static_cast(const wchar_t *, data), size);
+            s = wxString(static_cast<const wchar_t *>(data), size);
             break;
 
         case wxIPC_UTF8TEXT:
             if ( size )
                 size--;
 
-            s = wxString::FromUTF8(wx_static_cast(const char *, data), size);
+            s = wxString::FromUTF8(static_cast<const char *>(data), size);
             break;
 #endif // wxUSE_UNICODE
 
   {  // need to resize buffer
     if ( m_deletebufferwhendone )
     { // we're in charge of buffer, increase it
-      if ( m_buffer )
-        delete m_buffer;
+      delete [] m_buffer;
       m_buffer = new char[bytes];
       m_buffersize = bytes;
       return m_buffer;