From 663e7d784977f6b15c0cab73f754f9f39c9c0c2c Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 6 Feb 2018 21:29:50 +0000 Subject: Only define loff_t for __USE_MISC (bug 14553). Bug 14553 reports that sys/types.h defines loff_t unconditionally, despite it not being part of any supported standard. This is permitted by the POSIX *_t reservation, but as a quality-of-implementation issue it's still best not to define it except for __USE_MISC. This patch conditions the definition accordingly, updating a macro in sysdeps/unix/sysv/linux/sys/quota.h to use __loff_t so it still works even if __USE_MISC is not defined. codesearch.debian.net suggests there are quite a lot of loff_t uses outside glibc, but it might well make sense to change all (few) uses of loff_t or __loff_t inside glibc to use off64_t or __off64_t instead, leaving only the definitions, treating this name as obsolescent. Tested for x86_64. [BZ #14553] * posix/sys/types.h (loff_t): Only define for [__USE_MISC]. * sysdeps/unix/sysv/linux/sys/quota.h (dqoff): Use __loff_t instead of loff_t. --- sysdeps/unix/sysv/linux/sys/quota.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sysdeps/unix/sysv') diff --git a/sysdeps/unix/sysv/linux/sys/quota.h b/sysdeps/unix/sysv/linux/sys/quota.h index c2a0aaa88d..23f569ee9a 100644 --- a/sysdeps/unix/sysv/linux/sys/quota.h +++ b/sysdeps/unix/sysv/linux/sys/quota.h @@ -114,7 +114,7 @@ struct dqblk #define dq_btime dq_dqb.dqb_btime #define dq_itime dq_dqb.dqb_itime -#define dqoff(UID) ((loff_t)((UID) * sizeof (struct dqblk))) +#define dqoff(UID) ((__loff_t)((UID) * sizeof (struct dqblk))) /* Old name for struct if_dqinfo. */ struct dqinfo -- cgit 1.4.1