	    List of known bugs (certainly very incomplete)
	    ----------------------------------------------

Time-stamp: <1998-04-08T09:29:12-0700 drepper>

This following list contains those bugs which I'm aware of.  Please
make sure that bugs you report are not listed here.  If you can fix one
of these bugs/limitations I'll certainly be glad to receive a patch.

Another source of information about bugs is the problem data base of the
GNU project.  There is an easy to use WWW interface available at

       http://www-gnats.gnu.org:8080/cgi-bin/wwwgnats.pl

I would appreciate it very much if you could verify the problem was not
reported before by looking through the database.  To make the information
in this database as useful as possible please report bugs always using the
`glibcbug' shell script which gets installed with GNU libc.  Before reporting
a bug please check the FAQ since it discusses also a lot of problematic
situations.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Severity: [  *] to [***]


[ **]  There are problems with signal handling when using LinuxThreads.

[  *]  The precision of the `sinhl' and/or `asinhl' function do not seem
       to be the best.

[  *]  The syslog function should print to the console if the LOG_CONS
       flag was given.
       [PR libc/72]

[  *]  On Linux, there should be a way to prevent defining the symbol
       NGROUPS_MAX in the <linux/limits.h> header file.  In glibc it
       is defined in <posix1_lim.h> which must not make the other
       symbols in <linux/limits.h> available.
       [PR libc/140]

[  *]  The localedef program should not generate errors if for categories
       which are not used for the output there are characters referenced
       which are not defined in the charmap.
       [PR libc/229]

[  *]  The rcmd() functions (more concrete: the handling of .rhosts) does
       not support netgroups and wildcards (+).

[  *]  When assembling a locale definition, that uses the "copy"
       directive, with localedef, not only the copied category is
       checked for errors, but the whole file containing the same
       category.
       [PR libc/207 and PR libc/454]

[  *]  The libm-ieee `gamma' function gives wrong results (at least for
       -0.5).

[  *]  The libm-ieee `scalb' function gives wrong results for
       non-integral second parameters.

[  *]  The *scanf() functions currently do not handle %l[ and %ls parameters
       correctly since the parsing of the multi-byte characters does not
       yet use mbsrtowcs().

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ulrich Drepper
drepper@cygnus.com
