Clarify that the behavior of these functions is undefined if c is neither in the unsigned char range nor EOF. I copied the added text from toupper.3. In practice, calling them on out-of-range values - tested with recent glibc/gcc - is simply reading from random process memory - meaning, you either get some garbage, if the memory was readable, or a segmentation fault. See also: https://stackoverflow.com/questions/65514890/glibcs-isalpha-function-and-the-en-us-utf-8-locale Signed-off-by: Yedidyah Bar David <didi@xxxxxxxxxx> --- man3/isalpha.3 | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/man3/isalpha.3 b/man3/isalpha.3 index 443c2aa09..8ad997c29 100644 --- a/man3/isalpha.3 +++ b/man3/isalpha.3 @@ -145,6 +145,15 @@ is the special locale object .BR duplocale (3)) or is not a valid locale object handle. .PP +If +.I c +is neither an +.I "unsigned char" +value nor +.BR EOF , +the behavior of these functions +is undefined. +.PP The list below explains the operation of the functions without the "_l" suffix; the functions with the "_l" suffix differ only in using the locale object -- 2.31.1 Best regards, -- Didi