[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: coreutils-5.90 released
From: |
Paul Eggert |
Subject: |
Re: coreutils-5.90 released |
Date: |
Fri, 30 Sep 2005 10:35:21 -0700 |
User-agent: |
Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux) |
Jim Meyering <address@hidden> writes:
> +/* Determine a printf conversion specifier that is appropriate for size_t.
> + Ideally, we'd just use the c99-specified `z' length modifier, defining
> + PRI_z to "zu", but that's not portable. */
> +#if SIZE_MAX == UINT_MAX
> +# define PRI_z "u"
> +#elif SIZE_MAX == ULONG_MAX
> +# define PRI_z "lu"
> +#else
> +# define PRI_z PRIuMAX
> +#endif
I thought about doing that a while ago but gave it up because it
appears that this sort of approach will run afoul of gettext. That
is, xgettext groks standard C macros like PRIuMAX as a special case,
but it doesn't understand arbitrary C macros that we write. Hence the
formats won't be entered into the .po files properly.
Also, there might be problems on hosts where UINT_MAX == ULONG_MAX and
size_t is unsigned long int rather than unsigned int. This latter
problem is fixable, but the other one isn't easily fixable.