]> wimlib.net Git - wimlib/blobdiff - include/wimlib/reparse.h
Add randomized testing program
[wimlib] / include / wimlib / reparse.h
index 235c1680c17bca3a5bbd68e386864f05bd3d6f53..dce19a22130087ec1cc9475a88b060aab513dbdb 100644 (file)
@@ -45,17 +45,17 @@ struct reparse_buffer_disk {
        };
 };
 
-#define REPARSE_DATA_OFFSET (offsetof(struct reparse_buffer_disk, rpdata))
+#define REPARSE_DATA_OFFSET ((unsigned)offsetof(struct reparse_buffer_disk, rpdata))
 
 #define REPARSE_DATA_MAX_SIZE (REPARSE_POINT_MAX_SIZE - REPARSE_DATA_OFFSET)
 
-static inline void
+static _unused_attribute void
 check_reparse_buffer_disk(void)
 {
-       BUILD_BUG_ON(offsetof(struct reparse_buffer_disk, rpdata) != 8);
-       BUILD_BUG_ON(offsetof(struct reparse_buffer_disk, link.junction.data) != 16);
-       BUILD_BUG_ON(offsetof(struct reparse_buffer_disk, link.symlink.data) != 20);
-       BUILD_BUG_ON(sizeof(struct reparse_buffer_disk) != REPARSE_POINT_MAX_SIZE);
+       STATIC_ASSERT(offsetof(struct reparse_buffer_disk, rpdata) == 8);
+       STATIC_ASSERT(offsetof(struct reparse_buffer_disk, link.junction.data) == 16);
+       STATIC_ASSERT(offsetof(struct reparse_buffer_disk, link.symlink.data) == 20);
+       STATIC_ASSERT(sizeof(struct reparse_buffer_disk) == REPARSE_POINT_MAX_SIZE);
 }
 
 /* Wrapper around a symbolic link or junction reparse point