[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#63717: isalpha()/toupper() functions do not work for non-ASCII characters



Package: libc6
Version: 2.1.3-10
Severity: normal

The is*() and toupper()/tolower() functions do not work on non-ASCII
characters, even if LC_CTYPE etc. are set to the correct language used:

-----------------------------------------------------------------------

srittau@moby:~$ locale
LANG=de_DE
LC_CTYPE="de_DE"
LC_NUMERIC="de_DE"
LC_TIME="de_DE"
LC_COLLATE="de_DE"
LC_MONETARY="de_DE"
LC_MESSAGES="de_DE"
LC_ALL=
srittau@moby:~$ cat try.c
#include <ctype.h>
#include <stdio.h>

int main()
{
  int c = 'ä';
  printf("%c: %d\n", c, isprint(c));

  return 0;
}
srittau@moby:~$ gcc try.c -o try -Wall
srittau@moby:~$ ./try 
ä: 0
srittau@moby:~$ 

-----------------------------------------------------------------------

ä is a valid printing character, especially in the german language
(LANG=de_DE).

-- System Information
Debian Release: 2.2
Architecture: i386
Kernel: Linux moby 2.3.99-pre3 #1 Son Apr 2 11:15:37 CEST 2000 i686

Versions of packages libc6 depends on:
ii  ldso                          1.9.11-8   The Linux dynamic linker, library 



Reply to: