home *** CD-ROM | disk | FTP | other *** search
/ Netrunner 2004 October / NETRUNNER0410.ISO / regular / ActivePerl-5.8.4.810-MSWin32-x86.msi / _df3acc4bfe922e23765576874142566d < prev    next >
Text File  |  2004-06-01  |  6KB  |  163 lines

  1. /* !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
  2.    This file is built by warnings.pl
  3.    Any changes made here will be lost!
  4. */
  5.  
  6.  
  7. #define Off(x)            ((x) / 8)
  8. #define Bit(x)            (1 << ((x) % 8))
  9. #define IsSet(a, x)        ((a)[Off(x)] & Bit(x))
  10.  
  11.  
  12. #define G_WARN_OFF        0     /* $^W == 0 */
  13. #define G_WARN_ON        1    /* -w flag and $^W != 0 */
  14. #define G_WARN_ALL_ON        2    /* -W flag */
  15. #define G_WARN_ALL_OFF        4    /* -X flag */
  16. #define G_WARN_ONCE        8    /* set if 'once' ever enabled */
  17. #define G_WARN_ALL_MASK        (G_WARN_ALL_ON|G_WARN_ALL_OFF)
  18.  
  19. #define pWARN_STD        Nullsv
  20. #define pWARN_ALL        (Nullsv+1)    /* use warnings 'all' */
  21. #define pWARN_NONE        (Nullsv+2)    /* no  warnings 'all' */
  22.  
  23. #define specialWARN(x)        ((x) == pWARN_STD || (x) == pWARN_ALL ||    \
  24.                  (x) == pWARN_NONE)
  25.  
  26. /* Warnings Categories added in Perl 5.008 */
  27.  
  28. #define WARN_ALL        0
  29. #define WARN_CLOSURE        1
  30. #define WARN_DEPRECATED        2
  31. #define WARN_EXITING        3
  32. #define WARN_GLOB        4
  33. #define WARN_IO            5
  34. #define WARN_CLOSED        6
  35. #define WARN_EXEC        7
  36. #define WARN_LAYER        8
  37. #define WARN_NEWLINE        9
  38. #define WARN_PIPE        10
  39. #define WARN_UNOPENED        11
  40. #define WARN_MISC        12
  41. #define WARN_NUMERIC        13
  42. #define WARN_ONCE        14
  43. #define WARN_OVERFLOW        15
  44. #define WARN_PACK        16
  45. #define WARN_PORTABLE        17
  46. #define WARN_RECURSION        18
  47. #define WARN_REDEFINE        19
  48. #define WARN_REGEXP        20
  49. #define WARN_SEVERE        21
  50. #define WARN_DEBUGGING        22
  51. #define WARN_INPLACE        23
  52. #define WARN_INTERNAL        24
  53. #define WARN_MALLOC        25
  54. #define WARN_SIGNAL        26
  55. #define WARN_SUBSTR        27
  56. #define WARN_SYNTAX        28
  57. #define WARN_AMBIGUOUS        29
  58. #define WARN_BAREWORD        30
  59. #define WARN_DIGIT        31
  60. #define WARN_PARENTHESIS    32
  61. #define WARN_PRECEDENCE        33
  62. #define WARN_PRINTF        34
  63. #define WARN_PROTOTYPE        35
  64. #define WARN_QW            36
  65. #define WARN_RESERVED        37
  66. #define WARN_SEMICOLON        38
  67. #define WARN_TAINT        39
  68. #define WARN_THREADS        40
  69. #define WARN_UNINITIALIZED    41
  70. #define WARN_UNPACK        42
  71. #define WARN_UNTIE        43
  72. #define WARN_UTF8        44
  73. #define WARN_VOID        45
  74. #define WARN_Y2K        46
  75.  
  76. #define WARNsize        12
  77. #define WARN_ALLstring        "\125\125\125\125\125\125\125\125\125\125\125\125"
  78. #define WARN_NONEstring        "\0\0\0\0\0\0\0\0\0\0\0\0"
  79. #define WARN_TAINTstring    "\0\0\0\0\0\0\0\0\0\100\0\0"
  80.  
  81. #define isLEXWARN_on     (PL_curcop->cop_warnings != pWARN_STD)
  82. #define isLEXWARN_off    (PL_curcop->cop_warnings == pWARN_STD)
  83. #define isWARN_ONCE    (PL_dowarn & (G_WARN_ON|G_WARN_ONCE))
  84. #define isWARN_on(c,x)    (IsSet(SvPVX(c), 2*(x)))
  85. #define isWARNf_on(c,x)    (IsSet(SvPVX(c), 2*(x)+1))
  86.  
  87. #define ckWARN(x)                            \
  88.     ( (isLEXWARN_on && PL_curcop->cop_warnings != pWARN_NONE &&    \
  89.           (PL_curcop->cop_warnings == pWARN_ALL ||            \
  90.            isWARN_on(PL_curcop->cop_warnings, x) ) )        \
  91.       || (isLEXWARN_off && PL_dowarn & G_WARN_ON) )
  92.  
  93. #define ckWARN2(x,y)                            \
  94.       ( (isLEXWARN_on && PL_curcop->cop_warnings != pWARN_NONE &&    \
  95.           (PL_curcop->cop_warnings == pWARN_ALL ||            \
  96.             isWARN_on(PL_curcop->cop_warnings, x)  ||        \
  97.             isWARN_on(PL_curcop->cop_warnings, y) ) )         \
  98.         ||    (isLEXWARN_off && PL_dowarn & G_WARN_ON) )
  99.  
  100. #define ckWARN3(x,y,z)                            \
  101.       ( (isLEXWARN_on && PL_curcop->cop_warnings != pWARN_NONE &&    \
  102.           (PL_curcop->cop_warnings == pWARN_ALL ||            \
  103.             isWARN_on(PL_curcop->cop_warnings, x)  ||        \
  104.             isWARN_on(PL_curcop->cop_warnings, y)  ||        \
  105.             isWARN_on(PL_curcop->cop_warnings, z) ) )         \
  106.         ||    (isLEXWARN_off && PL_dowarn & G_WARN_ON) )
  107.  
  108. #define ckWARN4(x,y,z,t)                        \
  109.       ( (isLEXWARN_on && PL_curcop->cop_warnings != pWARN_NONE &&    \
  110.           (PL_curcop->cop_warnings == pWARN_ALL ||            \
  111.             isWARN_on(PL_curcop->cop_warnings, x)  ||        \
  112.             isWARN_on(PL_curcop->cop_warnings, y)  ||        \
  113.             isWARN_on(PL_curcop->cop_warnings, z)  ||        \
  114.             isWARN_on(PL_curcop->cop_warnings, t) ) )         \
  115.         ||    (isLEXWARN_off && PL_dowarn & G_WARN_ON) )
  116.  
  117. #define ckWARN_d(x)                            \
  118.       (isLEXWARN_off || PL_curcop->cop_warnings == pWARN_ALL ||    \
  119.          (PL_curcop->cop_warnings != pWARN_NONE &&            \
  120.           isWARN_on(PL_curcop->cop_warnings, x) ) )
  121.  
  122. #define ckWARN2_d(x,y)                            \
  123.       (isLEXWARN_off || PL_curcop->cop_warnings == pWARN_ALL ||    \
  124.          (PL_curcop->cop_warnings != pWARN_NONE &&            \
  125.             (isWARN_on(PL_curcop->cop_warnings, x)  ||        \
  126.              isWARN_on(PL_curcop->cop_warnings, y) ) ) )
  127.  
  128. #define ckWARN3_d(x,y,z)                        \
  129.       (isLEXWARN_off || PL_curcop->cop_warnings == pWARN_ALL ||    \
  130.          (PL_curcop->cop_warnings != pWARN_NONE &&            \
  131.             (isWARN_on(PL_curcop->cop_warnings, x)  ||        \
  132.              isWARN_on(PL_curcop->cop_warnings, y)  ||        \
  133.              isWARN_on(PL_curcop->cop_warnings, z) ) ) )
  134.  
  135. #define ckWARN4_d(x,y,z,t)                        \
  136.       (isLEXWARN_off || PL_curcop->cop_warnings == pWARN_ALL ||    \
  137.          (PL_curcop->cop_warnings != pWARN_NONE &&            \
  138.             (isWARN_on(PL_curcop->cop_warnings, x)  ||        \
  139.              isWARN_on(PL_curcop->cop_warnings, y)  ||        \
  140.              isWARN_on(PL_curcop->cop_warnings, z)  ||        \
  141.              isWARN_on(PL_curcop->cop_warnings, t) ) ) )
  142.  
  143. #define packWARN(a)        (a                                 )
  144. #define packWARN2(a,b)        ((a) | (b)<<8                      )
  145. #define packWARN3(a,b,c)    ((a) | (b)<<8 | (c) <<16           )
  146. #define packWARN4(a,b,c,d)    ((a) | (b)<<8 | (c) <<16 | (d) <<24)
  147.  
  148. #define unpackWARN1(x)        ((x)        & 0xFF)
  149. #define unpackWARN2(x)        (((x) >>8)  & 0xFF)
  150. #define unpackWARN3(x)        (((x) >>16) & 0xFF)
  151. #define unpackWARN4(x)        (((x) >>24) & 0xFF)
  152.  
  153. #define ckDEAD(x)                            \
  154.        ( ! specialWARN(PL_curcop->cop_warnings) &&            \
  155.         ( isWARNf_on(PL_curcop->cop_warnings, WARN_ALL) ||         \
  156.           isWARNf_on(PL_curcop->cop_warnings, unpackWARN1(x)) ||    \
  157.           isWARNf_on(PL_curcop->cop_warnings, unpackWARN2(x)) ||    \
  158.           isWARNf_on(PL_curcop->cop_warnings, unpackWARN3(x)) ||    \
  159.           isWARNf_on(PL_curcop->cop_warnings, unpackWARN4(x))))
  160.  
  161. /* end of file warnings.h */
  162.  
  163.