]> wimlib.net Git - wimlib/blobdiff - include/wimlib/reparse.h
compiler.h: remove _unused_attribute
[wimlib] / include / wimlib / reparse.h
index 235c1680c17bca3a5bbd68e386864f05bd3d6f53..972780dfc23fed60607c1b04e85159a50a4b1c78 100644 (file)
@@ -14,8 +14,8 @@ struct blob_table;
  * On-disk format of a reparse point buffer.  See:
  *     https://msdn.microsoft.com/en-us/library/dd541671.aspx
  *
- * Note: we are not using _packed_attribute for this structure, so only cast to
- * this if properly aligned!
+ * Note: we are not using __attribute__((packed)) for this structure, so only
+ * cast to this if properly aligned!
  */
 struct reparse_buffer_disk {
        le32 rptag;
@@ -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 void __attribute__((unused))
 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
@@ -86,25 +86,25 @@ link_is_relative_symlink(const struct link_reparse_point *link)
               (link->symlink_flags & SYMBOLIC_LINK_RELATIVE);
 }
 
-extern void
+void
 complete_reparse_point(struct reparse_buffer_disk *rpbuf,
                       const struct wim_inode *inode, u16 blob_size);
 
-extern int
+int
 parse_link_reparse_point(const struct reparse_buffer_disk *rpbuf, u16 rpbuflen,
                         struct link_reparse_point *link);
 
-extern int
+int
 make_link_reparse_point(const struct link_reparse_point *link,
                        struct reparse_buffer_disk *rpbuf, u16 *rpbuflen_ret);
 
-#ifndef __WIN32__
-extern int
+#ifndef _WIN32
+int
 wim_inode_readlink(const struct wim_inode *inode, char *buf, size_t bufsize,
                   const struct blob_descriptor *blob,
                   const char *altroot, size_t altroot_len);
 
-extern int
+int
 wim_inode_set_symlink(struct wim_inode *inode, const char *target,
                      struct blob_table *blob_table);
 #endif