This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
regcomp.c: update RExC_start when parsing outside input
[perl5.git] / warnings.h
index bf82366..4ab2d1d 100644 (file)
 
 /* Warnings Categories added in Perl 5.008 */
 
-#define WARN_ALL               0
-#define WARN_CLOSURE           1
-#define WARN_DEPRECATED                2
-#define WARN_EXITING           3
-#define WARN_GLOB              4
-#define WARN_IO                        5
-#define WARN_CLOSED            6
-#define WARN_EXEC              7
-#define WARN_LAYER             8
-#define WARN_NEWLINE           9
-#define WARN_PIPE              10
-#define WARN_UNOPENED          11
-#define WARN_MISC              12
-#define WARN_NUMERIC           13
-#define WARN_ONCE              14
-#define WARN_OVERFLOW          15
-#define WARN_PACK              16
-#define WARN_PORTABLE          17
-#define WARN_RECURSION         18
-#define WARN_REDEFINE          19
-#define WARN_REGEXP            20
-#define WARN_SEVERE            21
-#define WARN_DEBUGGING         22
-#define WARN_INPLACE           23
-#define WARN_INTERNAL          24
-#define WARN_MALLOC            25
-#define WARN_SIGNAL            26
-#define WARN_SUBSTR            27
-#define WARN_SYNTAX            28
-#define WARN_AMBIGUOUS         29
-#define WARN_BAREWORD          30
-#define WARN_DIGIT             31
-#define WARN_PARENTHESIS       32
-#define WARN_PRECEDENCE                33
-#define WARN_PRINTF            34
-#define WARN_PROTOTYPE         35
-#define WARN_QW                        36
-#define WARN_RESERVED          37
-#define WARN_SEMICOLON         38
-#define WARN_TAINT             39
-#define WARN_THREADS           40
-#define WARN_UNINITIALIZED     41
-#define WARN_UNPACK            42
-#define WARN_UNTIE             43
-#define WARN_UTF8              44
-#define WARN_VOID              45
+#define WARN_ALL                        0
+#define WARN_CLOSURE                    1
+#define WARN_DEPRECATED                         2
+#define WARN_EXITING                    3
+#define WARN_GLOB                       4
+#define WARN_IO                                 5
+#define WARN_CLOSED                     6
+#define WARN_EXEC                       7
+#define WARN_LAYER                      8
+#define WARN_NEWLINE                    9
+#define WARN_PIPE                       10
+#define WARN_UNOPENED                   11
+#define WARN_MISC                       12
+#define WARN_NUMERIC                    13
+#define WARN_ONCE                       14
+#define WARN_OVERFLOW                   15
+#define WARN_PACK                       16
+#define WARN_PORTABLE                   17
+#define WARN_RECURSION                  18
+#define WARN_REDEFINE                   19
+#define WARN_REGEXP                     20
+#define WARN_SEVERE                     21
+#define WARN_DEBUGGING                  22
+#define WARN_INPLACE                    23
+#define WARN_INTERNAL                   24
+#define WARN_MALLOC                     25
+#define WARN_SIGNAL                     26
+#define WARN_SUBSTR                     27
+#define WARN_SYNTAX                     28
+#define WARN_AMBIGUOUS                  29
+#define WARN_BAREWORD                   30
+#define WARN_DIGIT                      31
+#define WARN_PARENTHESIS                32
+#define WARN_PRECEDENCE                         33
+#define WARN_PRINTF                     34
+#define WARN_PROTOTYPE                  35
+#define WARN_QW                                 36
+#define WARN_RESERVED                   37
+#define WARN_SEMICOLON                  38
+#define WARN_TAINT                      39
+#define WARN_THREADS                    40
+#define WARN_UNINITIALIZED              41
+#define WARN_UNPACK                     42
+#define WARN_UNTIE                      43
+#define WARN_UTF8                       44
+#define WARN_VOID                       45
 
 /* Warnings Categories added in Perl 5.011 */
 
-#define WARN_IMPRECISION       46
-#define WARN_ILLEGALPROTO      47
+#define WARN_IMPRECISION                46
+#define WARN_ILLEGALPROTO               47
 
-#define WARNsize               12
-#define WARN_ALLstring         "\125\125\125\125\125\125\125\125\125\125\125\125"
-#define WARN_NONEstring                "\0\0\0\0\0\0\0\0\0\0\0\0"
+/* Warnings Categories added in Perl 5.013 */
+
+#define WARN_NON_UNICODE                48
+#define WARN_NONCHAR                    49
+#define WARN_SURROGATE                  50
+
+/* Warnings Categories added in Perl 5.017 */
+
+#define WARN_EXPERIMENTAL               51
+#define WARN_EXPERIMENTAL__LEXICAL_SUBS         52
+#define WARN_EXPERIMENTAL__REGEX_SETS   53
+#define WARN_EXPERIMENTAL__SMARTMATCH   54
+
+/* Warnings Categories added in Perl 5.019 */
+
+#define WARN_EXPERIMENTAL__POSTDEREF    55
+#define WARN_EXPERIMENTAL__SIGNATURES   56
+#define WARN_SYSCALLS                   57
+
+/* Warnings Categories added in Perl 5.021 */
+
+#define WARN_EXPERIMENTAL__BITWISE      58
+#define WARN_EXPERIMENTAL__CONST_ATTR   59
+#define WARN_EXPERIMENTAL__RE_STRICT    60
+#define WARN_EXPERIMENTAL__REFALIASING  61
+#define WARN_EXPERIMENTAL__WIN32_PERLIO         62
+#define WARN_LOCALE                     63
+#define WARN_MISSING                    64
+#define WARN_REDUNDANT                  65
+
+#define WARNsize                        17
+#define WARN_ALLstring                  "\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125"
+#define WARN_NONEstring                         "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
 
 #define isLEXWARN_on   (PL_curcop->cop_warnings != pWARN_STD)
 #define isLEXWARN_off  (PL_curcop->cop_warnings == pWARN_STD)
                                             char))
 
 #define ckWARN(w)              Perl_ckwarn(aTHX_ packWARN(w))
+
+/* The w1, w2 ... should be independent warnings categories; one shouldn't be
+ * a subcategory of any other */
+
 #define ckWARN2(w1,w2)         Perl_ckwarn(aTHX_ packWARN2(w1,w2))
 #define ckWARN3(w1,w2,w3)      Perl_ckwarn(aTHX_ packWARN3(w1,w2,w3))
 #define ckWARN4(w1,w2,w3,w4)   Perl_ckwarn(aTHX_ packWARN4(w1,w2,w3,w4))
 #define WARNshift              8
 
 #define packWARN(a)            (a                                      )
+
+/* The a, b, ... should be independent warnings categories; one shouldn't be
+ * a subcategory of any other */
+
 #define packWARN2(a,b)         ((a) | ((b)<<8)                         )
 #define packWARN3(a,b,c)       ((a) | ((b)<<8) | ((c)<<16)             )
 #define packWARN4(a,b,c,d)     ((a) | ((b)<<8) | ((c)<<16) | ((d) <<24))
              isWARNf_on(PL_curcop->cop_warnings, unpackWARN4(x))))
 
 /* end of file warnings.h */
+
 /* ex: set ro: */