On 11/07/2013 05:58 AM, Steffen Daode Nurpmeso wrote:
> Karl Williamson <public_at_khwilliamson.com> wrote:
> |On 11/06/2013 03:43 AM, Steffen Daode Nurpmeso wrote:
> |> Philippe Verdy <verdy_p_at_wanadoo.fr> wrote:
> |>|2013/11/5 Steffen Daode <sdaoden_at_gmail.com>
> |>|> (The problem i'm facing is that _PRINT and _GRAPH cannot be set
> |>|> for some properties from PropList.txt, say, _PRINT can't be set
> |>|> for U+0009, CHARACTER TABULATION (ht), since it's a Cc, but in
> |>|
> |>|TAB is "printable" (for the isprint() macro in standard \
> |>|C librries) because
> |>
> |> Nope according to POSIX, Vol. 1: Base Definitions, 7.3.1. LC_CTYPE ([1]):
> |
> |The only vendor I'm aware of that makes TAB a printable is Microsoft.
> |Thus Philippe is wrong about this except for MS products.
>
> That made me curious, and it doesn't seem to be right [1].
>
> isprint returns a nonzero value if c is a printable character—this
> includes the space character (0x20 – 0x7E).
>
> The behavior of isprint and _isprint_l is undefined if c is not
> EOF or in the range 0 through 0xFF, inclusive. When a debug CRT
> library is used and c is not one of these values, the functions
> raise an assertion.
>
> [1] <http://msdn.microsoft.com/en-us/library/ewx8s4kw(v=vs.110).aspx>
>
I have various tests that run through all a machine's locales looking
for violations of the Posix standard. When run on MS machines, they
fail as I've described. Perhaps those machines have old, buggy
implementations that have been fixed.
Received on Thu Nov 14 2013 - 22:49:06 CST
This archive was generated by hypermail 2.2.0 : Thu Nov 14 2013 - 22:49:09 CST