From: Helmut Grohne Date: Sun, 22 Nov 2015 07:43:08 +0000 (+0100) Subject: basic: fix build on architectures with small long X-Git-Tag: v229~279^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F2013%2Fhead;p=thirdparty%2Fsystemd.git basic: fix build on architectures with small long The x32 architecture has a small "long" type which is not enough to hold struct statfs.f_type. --- diff --git a/src/basic/stat-util.h b/src/basic/stat-util.h index 909b220a245..fb924642746 100644 --- a/src/basic/stat-util.h +++ b/src/basic/stat-util.h @@ -52,9 +52,8 @@ int path_is_os_tree(const char *path); int files_same(const char *filea, const char *fileb); /* The .f_type field of struct statfs is really weird defined on - * different archs. Let's use our own type we know is sufficiently - * larger to store the possible values. */ -typedef long statfs_f_type_t; + * different archs. Let's give its type a name. */ +typedef typeof(((struct statfs*)NULL)->f_type) statfs_f_type_t; bool is_fs_type(const struct statfs *s, statfs_f_type_t magic_value) _pure_; int fd_check_fstype(int fd, statfs_f_type_t magic_value);