/* Warnings Categories added in Perl 5.019 */
-#define WARN_SYSCALLS 56
+#define WARN_EXPERIMENTAL__AUTODEREF 56
+#define WARN_EXPERIMENTAL__POSTDEREF 57
+#define WARN_EXPERIMENTAL__SIGNATURES 58
+#define WARN_SYSCALLS 59
#define WARNsize 15
#define WARN_ALLstring "\125\125\125\125\125\125\125\125\125\125\125\125\125\125\125"
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))