SGI compilation fixes

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 1999-03-03 17:05:25 +00:00
parent 803ef87492
commit ba6f401d45
2 changed files with 31 additions and 36 deletions

View File

@ -128,31 +128,27 @@
// Make sure the environment is set correctly
#if defined(__WXMSW__) && defined(__X__)
# error "Target can't be both X and Windows"
#error "Target can't be both X and Windows"
#elif !defined(__WXMOTIF__) && !defined(__WXMSW__) && !defined(__WXGTK__) && \
!defined(__WXMAC__) && !defined(__X__) && !defined(__WXQT__) && !defined(__WXSTUBS__)
#error "No Target! Use -D[__WXMOTIF__|__WXGTK__|__WXMSW__|__WXMAC__|__WXQT__|__WXSTUBS__]"
#error "No Target! Use -D[__WXMOTIF__|__WXGTK__|__WXMSW__|__WXMAC__|__WXQT__|__WXSTUBS__]"
#endif
#if defined(__WXMOTIF__) || defined(__WXGTK__) || defined(__WXQT__) || defined(__WXSTUBS__)
// Bool is now obsolete, use bool instead
// typedef int Bool;
// Bool is now obsolete, use bool instead
// typedef int Bool;
#ifndef TRUE
# define TRUE 1
# define FALSE 0
# define Bool_DEFINED
#endif
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#define Bool_DEFINED
#endif
#elif defined(__WXMSW__)
#ifndef TRUE
# define TRUE 1
# define FALSE 0
#endif
#endif
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#endif
#endif // TRUE/FALSE
// VC++ 4.0 is 1000.
@ -172,12 +168,9 @@
#elif defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
typedef unsigned int bool;
#elif defined(__WATCOMC__)
// typedef unsigned int bool;
#if (__WATCOMC__ < 1100)
typedef unsigned int bool;
#endif
#elif defined(__SUNCC__) || defined(__SUNPRO_CC)
#ifdef __SUNPRO_CC
// starting from version 5.0 Sun CC understands 'bool'
@ -188,12 +181,11 @@
#else
#error "Unknown compiler: only Sun's CC and gcc are currently recognised."
#endif // Sun CC
#endif
#if ( defined(__VISUALC__) && (__VISUALC__ <= 800) ) || defined(__GNUWIN32__) || (defined(__BORLANDC__) && defined(__WIN16__)) || defined(__SC__) || defined(__SALFORDC__)
// Not a good idea, because later system files (e.g. windows.h)
// may try to define it. Use wxByte instead.
// #define byte unsigned char
#elif defined(__SGI_CC__)
// test is taken from SGI "C++ Programming Guide"
#ifndef _BOOL
typedef unsigned char bool;
#endif // _BOOL
#endif
typedef unsigned char wxByte;

View File

@ -56,23 +56,26 @@ void wxDebugFree(void * buf, bool isVect = FALSE);
#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);
#if wxUSE_ARRAY_MEMORY_OPERATORS
void * operator new[] (size_t size);
#endif
void * operator new (size_t size, char * fileName, int lineNum);
void operator delete (void * buf);
#if wxUSE_ARRAY_MEMORY_OPERATORS
void * operator new[] (size_t size, char * fileName, int lineNum);
void operator delete[] (void * buf);
void * operator new[] (size_t size);
void * operator new[] (size_t size, char * fileName, int lineNum);
void operator delete[] (void * buf);
#endif
// VC++ 6.0