Enable -Wconversion for core and fix the warnings.
[apps/agl-service-can-low-level.git] / pb.h
diff --git a/pb.h b/pb.h
index 85f4421..dce8df3 100644 (file)
--- a/pb.h
+++ b/pb.h
@@ -75,6 +75,7 @@ typedef enum {
     
     /* Number of declared LTYPES */
     PB_LTYPES_COUNT = 7,
+    PB_LTYPE_MASK = 0x0F,
     
     /******************
      * Modifier flags *
@@ -95,11 +96,13 @@ typedef enum {
      * data_offset points to pb_callback_t structure.
      * LTYPE should be 0 (it is ignored, but sometimes
      * used to speculatively index an array). */
-    PB_HTYPE_CALLBACK = 0x30
+    PB_HTYPE_CALLBACK = 0x30,
+    
+    PB_HTYPE_MASK = 0xF0
 } pb_packed pb_type_t;
 
-#define PB_HTYPE(x) ((x) & 0xF0)
-#define PB_LTYPE(x) ((x) & 0x0F)
+#define PB_HTYPE(x) ((x) & PB_HTYPE_MASK)
+#define PB_LTYPE(x) ((x) & PB_LTYPE_MASK)
 
 /* This structure is used in auto-generated constants
  * to specify struct fields.
@@ -194,7 +197,7 @@ typedef enum {
 #define pb_arraysize(st, m) (pb_membersize(st, m) / pb_membersize(st, m[0]))
 #define pb_delta(st, m1, m2) ((int)offsetof(st, m1) - (int)offsetof(st, m2))
 #define pb_delta_end(st, m1, m2) (offsetof(st, m1) - offsetof(st, m2) - pb_membersize(st, m2))
-#define PB_LAST_FIELD {0,(pb_type_t) 0,0,0}
+#define PB_LAST_FIELD {0,(pb_type_t) 0,0,0,0,0,0}
 
 /* These macros are used for giving out error messages.
  * They are mostly a debugging aid; the main error information