]> git.saurik.com Git - wxWidgets.git/commitdiff
SGI compilation fixes
authorVadim Zeitlin <vadim@wxwidgets.org>
Wed, 3 Mar 1999 17:05:25 +0000 (17:05 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Wed, 3 Mar 1999 17:05:25 +0000 (17:05 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/defs.h
include/wx/memory.h

index 35c46f8e3ac1a052fb96784108259532fdbd6680..0236ab92f4532fb5f612f9d0bacf28da5a2195f6 100644 (file)
 
 // 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.
 
 #elif defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
     typedef unsigned int bool;
 #elif defined(__WATCOMC__)
-//    typedef unsigned int bool;
-
- #if (__WATCOMC__ < 1100)
-    typedef unsigned int bool;
- #endif
-
+    #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'
     #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;
index f9977849b58878608b2f073155338aabd5706d22..23f64dca35b62e005b6e49b87113ac885ddc6608 100644 (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