#ifdef __WXDEBUG__
-void * wxDebugAlloc(size_t size, char * fileName, int lineNum, bool isObject, bool isVect = FALSE);
+void * wxDebugAlloc(size_t size, wxChar * fileName, int lineNum, bool isObject, bool isVect = FALSE);
void wxDebugFree(void * buf, bool isVect = FALSE);
// Global versions of the new and delete operators.
#define wxUSE_ARRAY_MEMORY_OPERATORS 0
#elif !( defined (__VISUALC__) && (__VISUALC__ <= 1020) ) || defined( __MWERKS__)
#define wxUSE_ARRAY_MEMORY_OPERATORS 1
+#elif defined (__SGI_CC_)
+ // only supported by -n32 compilers
+ #ifndef __EDG_ABI_COMPATIBILITY_VERSION
+ #define wxUSE_ARRAY_MEMORY_OPERATORS 0
+ #endif
#else
+ // ::operator new[] is a recent C++ feature, so assume it's not supported
#define wxUSE_ARRAY_MEMORY_OPERATORS 0
#endif
// Added JACS 25/11/98: needed for some compilers
void * operator new (size_t size);
+WXDLLEXPORT void * operator new (size_t size, wxChar * fileName, int lineNum);
-#if wxUSE_ARRAY_MEMORY_OPERATORS
-void * operator new[] (size_t size);
-#endif
-
-void * operator new (size_t size, char * fileName, int lineNum);
+#if !defined(__VISAGECPP__)
void operator delete (void * buf);
+#endif
#if wxUSE_ARRAY_MEMORY_OPERATORS
-void * operator new[] (size_t size, char * fileName, int lineNum);
-void operator delete[] (void * buf);
+ WXDLLEXPORT void* operator new[] (size_t size);
+ WXDLLEXPORT void* operator new[] (size_t size, wxChar * fileName, int lineNum);
+ WXDLLEXPORT void operator delete[] (void * buf);
#endif
// VC++ 6.0
#if defined(__VISUALC__) && (__VISUALC__ >= 1200)
- void operator delete(void *buf, char*, int);
- void operator delete[](void *buf, char*, int);
+ WXDLLEXPORT void operator delete(void *buf, wxChar*, int);
+ WXDLLEXPORT void operator delete[](void *buf, wxChar*, int);
#endif
#endif
wxMarkerType m_firstMarker;
// File name and line number are from cpp.
- char* m_fileName;
+ wxChar* m_fileName;
int m_lineNum;
// The amount of memory requested by the caller.
static void SetCheckpoint(bool all = FALSE);
static wxMemStruct *GetCheckpoint(void) { return checkPoint; }
-
+
// Calculated from the request size and any padding needed
// before the final marker.
static size_t PaddedSize (const size_t reqSize);
};
// Output a debug message, in a system dependent fashion.
-void WXDLLEXPORT wxTrace(const char *fmt ...);
-void WXDLLEXPORT wxTraceLevel(int level, const char *fmt ...);
+void WXDLLEXPORT wxTrace(const wxChar *fmt ...);
+void WXDLLEXPORT wxTraceLevel(int level, const wxChar *fmt ...);
#define WXTRACE wxTrace
#define WXTRACELEVEL wxTraceLevel
#else // else part for the #if __WXDEBUG__
-inline void wxTrace(const char *WXUNUSED(fmt)) {}
-inline void wxTraceLevel(int WXUNUSED(level), const char *WXUNUSED(fmt)) {}
+inline void wxTrace(const wxChar *WXUNUSED(fmt)) {}
+inline void wxTraceLevel(int WXUNUSED(level), const wxChar *WXUNUSED(fmt)) {}
#define WXTRACE TRUE ? (void)0 : wxTrace
#define WXTRACELEVEL TRUE ? (void)0 : wxTraceLevel