POSIX requires all types specified in sys/types.h to have arithmetic type, except for a list of exceptions which does not include timer_t. See: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html I suspect this is a mistake in POSIX, since there is no good reason for timer_t to have arithmetic type; it probably should have been on the exception list with other opaque handle types and attribute types. Thus, I've also opened an issue report on the Austin Group tracker: http://austingroupbugs.net/view.php?id=659 requesting that timer_t be added to the exceptions. Until the issue is resolved, I hope this bug report will remain open on the glibc tracker.
The conflict with POSIX was fixed in POSIX, so I consider this bug resolved.