summaryrefslogtreecommitdiff
path: root/debian/patches/0009-libdiskfs-turn-all-inline-functions-extern-inline.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/0009-libdiskfs-turn-all-inline-functions-extern-inline.patch')
-rw-r--r--debian/patches/0009-libdiskfs-turn-all-inline-functions-extern-inline.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/debian/patches/0009-libdiskfs-turn-all-inline-functions-extern-inline.patch b/debian/patches/0009-libdiskfs-turn-all-inline-functions-extern-inline.patch
new file mode 100644
index 00000000..f6f19b05
--- /dev/null
+++ b/debian/patches/0009-libdiskfs-turn-all-inline-functions-extern-inline.patch
@@ -0,0 +1,49 @@
+From 6b915c4b737da3f46bb675e7cbd6e3df1ca86cde Mon Sep 17 00:00:00 2001
+From: Justus Winter <4winter@informatik.uni-hamburg.de>
+Date: Fri, 17 Apr 2015 17:44:07 +0200
+Subject: [PATCH hurd 09/13] libdiskfs: turn all inline functions `extern
+ inline'
+
+* libdiskfs/diskfs.h (diskfs_node_disknode, diskfs_disknode_node):
+Declare functions as `extern inline' so that we can use them in other
+functions declared as `extern inline'.
+---
+ libdiskfs/diskfs.h | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/libdiskfs/diskfs.h b/libdiskfs/diskfs.h
+index 7a21dff..8ab6142 100644
+--- a/libdiskfs/diskfs.h
++++ b/libdiskfs/diskfs.h
+@@ -697,9 +697,11 @@ struct node *diskfs_make_node_alloc (size_t size);
+ this value for offset calculations. */
+ extern const size_t _diskfs_sizeof_struct_node;
+
++#if defined(__USE_EXTERN_INLINES) || defined(DISKFS_DEFINE_EXTERN_INLINE)
++
+ /* Return the address of the disknode for NODE. NODE must have been
+ allocated using diskfs_make_node_alloc. */
+-static inline struct disknode *
++DISKFS_EXTERN_INLINE struct disknode *
+ diskfs_node_disknode (struct node *node)
+ {
+ return (struct disknode *) ((char *) node + _diskfs_sizeof_struct_node);
+@@ -707,12 +709,14 @@ diskfs_node_disknode (struct node *node)
+
+ /* Return the address of the node for DISKNODE. DISKNODE must have
+ been allocated using diskfs_make_node_alloc. */
+-static inline struct node *
++DISKFS_EXTERN_INLINE struct node *
+ diskfs_disknode_node (struct disknode *disknode)
+ {
+ return (struct node *) ((char *) disknode - _diskfs_sizeof_struct_node);
+ }
+
++#endif /* Use extern inlines. */
++
+
+ /* The library also exports the following functions; they are not generally
+ useful unless you are redefining other functions the library provides. */
+--
+2.1.4
+