Inline function definitions for isdigit and isxdigit?

Florian Weimer fweimer@redhat.com
Fri Sep 16 17:56:00 GMT 2016


On 09/16/2016 07:13 PM, Joseph Myers wrote:
> On Fri, 16 Sep 2016, Florian Weimer wrote:
>
>> For isxdigit, C99 and C11 make a final determination that only '0' … '9', 'a'
>> … 'f' and 'A' … 'F' are hexadecimal digits.  But POSIX allows more symbolic
>> names in the xdigit character class.  Much hand-waving is still required to
>> make this C99/C11 compliant because the standard only lists 22 hexadecimal
>> digits.  One could perhaps argue that the additional digits introduced by a
>> locale are alternative representations of the six letters.
>
> That would indicate to me that a POSIX issue needs to be raised about the
> incompatibility with ISO C.

I filed: <http://austingroupbugs.net/view.php?id=1078>

The isalnum specification in ISO C appears to be overly restrictive.  I 
think it should be possible to have characters which are digits, but not 
in the range '0' … '9', and for which isalnum returns true.

Thanks,
Florian



More information about the Libc-alpha mailing list