diff -c -t LanMan98::tony.$.OSLib.!OsLib601.Source.Types.h/types LanMan98::tony.$.OSLib.!Experimental.Source.Types.h/types
*** LanMan98::tony.$.OSLib.!OsLib601.Source.Types.h/types       Wed Feb  2 19:35:16 2000
--- LanMan98::tony.$.OSLib.!Experimental.Source.Types.h/types   Thu May  4 13:03:26 2000
***************
*** 25,33 ****
   * Type definitions *
   ********************/
  typedef unsigned int                            bits;
! typedef int                                     bool;
  typedef unsigned char                           byte;
  
  /************************
   * Constant definitions *
   ************************/
--- 25,55 ----
   * Type definitions *
   ********************/
  typedef unsigned int                            bits;
! typedef int                                     osbool;
  typedef unsigned char                           byte;
  
+ /* for backward compatibility with non C++ and pre-C99 code
+ ** we can define |bool| as osbool. Anyone who wants to provide
+ ** their own definition of |bool| can define BOOL_DEFINED
+ */
+ 
+ #if !defined BOOL_DEFINED && defined ( __STDC_VERSION__ )
+   /* this is necessary to avoid the "undefined macro" warning */
+   #if __STDC_VERSION__ >= 199901L
+     #define BOOL_DEFINED
+   #endif
+ #endif
+ 
+ /* C++ (1998) defines bool as a keyword */
+ /* CFront defines |__cplusplus| and |c_plusplus|, but not |bool| */
+ #if !defined( BOOL_DEFINED ) && defined __cplusplus && !defined c_plusplus
+   #define BOOL_DEFINED
+ #endif
+ 
+ #if !defined( BOOL_DEFINED )
+    typedef osbool bool;
+ #endif
+ 
  /************************
   * Constant definitions *
   ************************/
***************
*** 35,44 ****
  #define NULL                                    0
  #endif
  #ifndef FALSE
! #define FALSE                                   ((bool) 0)
  #endif
  #ifndef TRUE
! #define TRUE                                    ((bool) 1)
  #endif
  #ifndef NONE
  #define NONE                                    0u
--- 57,66 ----
  #define NULL                                    0
  #endif
  #ifndef FALSE
! #define FALSE                                   ((osbool) 0)
  #endif
  #ifndef TRUE
! #define TRUE                                    ((osbool) 1)
  #endif
  #ifndef NONE
  #define NONE                                    0u
