-#define EV_UNDEF -1 /* guaranteed to be invalid */
-#define EV_NONE 0x00
-#define EV_READ 0x01
-#define EV_WRITE 0x02
-#define EV_TIMEOUT 0x000100
-#define EV_PERIODIC 0x000200
-#define EV_SIGNAL 0x000400
-#define EV_IDLE 0x000800
-#define EV_CHECK 0x001000
-#define EV_PREPARE 0x002000
-#define EV_CHILD 0x004000
-#define EV_ERROR 0x800000 /* sent when an error occurs */
-
-/* can be used to add custom fields to all watchers */
+#define EV_UNDEF -1L /* guaranteed to be invalid */
+#define EV_NONE 0x00L /* no events */
+#define EV_READ 0x01L /* ev_io detected read will not block */
+#define EV_WRITE 0x02L /* ev_io detected write will not block */
+#define EV_TIMEOUT 0x00000100L /* timer timed out */
+#define EV_PERIODIC 0x00000200L /* periodic timer timed out */
+#define EV_SIGNAL 0x00000400L /* signal was received */
+#define EV_IDLE 0x00000800L /* event loop is idling */
+#define EV_PREPARE 0x00001000L /* event loop about to poll */
+#define EV_CHECK 0x00002000L /* event loop finished poll */
+#define EV_CHILD 0x00004000L /* child/pid had status change */
+#define EV_EMBED 0x00008000L /* embedded event loop needs sweep */
+#define EV_STAT 0x00010000L /* stat data changed */
+#define EV_ERROR 0x80000000L /* sent when an error occurs */
+
+/* can be used to add custom fields to all watchers, while losing binary compatibility */