aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGravatar Nikolaus Rath <Nikolaus@rath.org>2017-07-08 13:11:47 +0200
committerGravatar Nikolaus Rath <Nikolaus@rath.org>2017-07-08 13:11:47 +0200
commit503e32d01e4db00e90d7acfd81ab05386559069f (patch)
tree473d2c1d01ea91cb95eee7d9341ed63c542dc6ef /lib
parentd2ed5539fc406008816e9c65b44e2f1d0554ffbe (diff)
Fixup symbol versioning for GCC 4.x
GCC 4.8 doesn't like to rename fuse_new_30 to fuse_new, if we also define an implementation for fuse_new.
Diffstat (limited to 'lib')
-rw-r--r--lib/fuse.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/fuse.c b/lib/fuse.c
index ce29819..5160eb1 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -4626,10 +4626,8 @@ void fuse_stop_cleanup_thread(struct fuse *f)
}
-/* Emulates 3.0-style fuse_new(), which processes
- --help */
+/* Emulates 3.0-style fuse_new(), which processes --help */
FUSE_SYMVER(".symver fuse_new_30,fuse_new@FUSE_3.0");
-FUSE_SYMVER(".symver fuse_new,fuse_new@@FUSE_3.1");
struct fuse *fuse_new_30(struct fuse_args *args,
const struct fuse_operations *op,
size_t op_size, void *user_data)
@@ -4652,7 +4650,12 @@ struct fuse *fuse_new_30(struct fuse_args *args,
return fuse_new(args, op, op_size, user_data);
}
-struct fuse *fuse_new(struct fuse_args *args,
+/* Explicit prototype to prevent compiler warnings
+ (fuse.h only defines fuse_new()) */
+struct fuse *fuse_new_31(struct fuse_args *args, const struct fuse_operations *op,
+ size_t op_size, void *private_data);
+FUSE_SYMVER(".symver fuse_new_31,fuse_new@@FUSE_3.1");
+struct fuse *fuse_new_31(struct fuse_args *args,
const struct fuse_operations *op,
size_t op_size, void *user_data)
{