freebsd-skq/lib/libc/locale/toupper.c
Andrey A. Chernov 2f04ec53cc Make not-so-space-eaten locale version:
split modules to bring only neccessary functions,
eliminate sprintf, make reduced startup_locale version.
1994-09-24 15:59:33 +00:00

23 lines
354 B
C

#include <stdio.h>
#include <rune.h>
_BSD_RUNE_T_
___toupper(c)
_BSD_RUNE_T_ c;
{
int x;
_RuneRange *rr = &_CurrentRuneLocale->mapupper_ext;
_RuneEntry *re = rr->ranges;
if (c == EOF)
return(EOF);
for (x = 0; x < rr->nranges; ++x, ++re) {
if (c < re->min)
return(c);
if (c <= re->max)
return(re->map + c - re->min);
}
return(c);
}