home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 January / Chip_1997-01_cd.bin / ms95 / disk22 / dir08 / f012740.re_ / f012740.re
Text File  |  1996-04-02  |  3KB  |  115 lines

  1. /*----------------------------------------------------------------------+
  2. |                                    |
  3. |  Copyright (1992) Bentley Systems, Inc., All rights reserved.        |
  4. |                                    |
  5. |  "MicroStation", "MDL", and "MicroCSL" are trademarks of Bentley    |
  6. |  Systems, Inc.                            |
  7. |                                    |
  8. |  Limited permission is hereby granted to reproduce and modify this    |
  9. |  copyrighted material provided that the resulting code is used only     |
  10. |  in conjunction with Bentley Systems products under the terms of the    |
  11. |  license agreement provided therein, and that this notice is retained    |
  12. |  in its entirety in any such reproduction or modification.        |
  13. |                                    |
  14. +----------------------------------------------------------------------*/
  15. /*----------------------------------------------------------------------+
  16. |                                    |
  17. |   Current Revision:                            |
  18. |   $Workfile:   errno.h  $
  19. |   $Revision:   6.5  $  $Date:   02 Jun 1995 20:42:18  $
  20. |                                    |
  21. +----------------------------------------------------------------------*/
  22.  
  23. /*----------------------------------------------------------------------+
  24. |                                    |
  25. |    No part of MicroStation other than system libraries and         |
  26. |    standard C libraries linked in with MicroStation            |
  27. |    ever store a value in errno.  This allows MDL programs      |
  28. |    to determine the errno value set by the standard libraries.    |
  29. |                                    |
  30. |    MicroStation uses the built-in variable mdlErrno to         |
  31. |    report errors. The values for mdlErrno are all defined      |
  32. |    in mdlerrs.h.                                       |
  33. |                                    |
  34. |    Typically, when an MDL program calls a standard C function        |
  35. |    the value in errno is relevant. When an MDL program calls       |
  36. |    any other built-in function the value in mdlErrno is        |
  37. |    relevant.                               |
  38. |                                    |
  39. +----------------------------------------------------------------------*/
  40.  
  41.  
  42. #if !defined (mdl)
  43. #   error This file is intended for MDL only
  44. #endif
  45.  
  46. #if !defined (__errnoH__)
  47. #   define __errnoH__
  48.  
  49. #if defined (pm386)
  50. #   define __errno_implemented__ 
  51.  
  52. extern int        errno;
  53. extern int          _doserrno;
  54.  
  55. #   define EDOM        33
  56. #   define ERANGE   34
  57.     
  58. #elif defined (hp700) || defined (clipper) || defined (sparc) || \
  59.       defined (macintosh) || defined (vax) || defined (rs6000) || \
  60.       defined (sgimips) || defined(SolarisX86)
  61.     
  62. #   define __errno_implemented__ 
  63.  
  64.     extern int        errno;
  65.  
  66. #   define EDOM        33
  67. #   define ERANGE   34
  68.  
  69. #elif defined (os2)
  70.     
  71. #   define __errno_implemented__ 
  72.  
  73. #if defined (__IBMC__)
  74.  
  75.     extern int        errno;
  76.  
  77. #   define EDOM        1
  78. #   define ERANGE   2
  79.  
  80. #elif defined (__HIGHC__)
  81.  
  82.     extern int        errno;
  83.  
  84. #   define EDOM        33
  85. #   define ERANGE   34
  86.  
  87. #elif defined (__WATCOMC__)
  88.  
  89.     extern int            *_errno(void);
  90. #   define errno        (*_errno())
  91.  
  92. #   define EDOM        13
  93. #   define ERANGE   14
  94.  
  95. #endif
  96.     
  97. #elif defined (winNT)
  98.  
  99. #   define __errno_implemented__ 
  100.  
  101.     extern int *_errno(void);
  102.  
  103. #   define errno    (*_errno())
  104.  
  105. #   define EDOM        33
  106. #   define ERANGE   34
  107.  
  108. #endif
  109.     
  110. #   if !defined (__errno_implemented__)
  111. #   error errno.h is not implemented for this platform    
  112. #   endif    
  113. #endif
  114.  
  115.