--- /dev/null
+typedef unsigned char u8;
+typedef unsigned short u16;
+
+struct s {
+ u8 anchor[5];
+ u16 table_length;
+};
+
+void some_function(int x);
+
+void other_function(const struct s *pointer)
+{
+ u8 checksum = 0;
+ const u8 *ptr = (const u8 *)(pointer);
+
+ for (unsigned int i = 0; i < sizeof(*pointer); ++i)
+ checksum = (checksum + ptr[i]) & 0xFF;
+
+ some_function((int)checksum);
+}