The traditional API of sys_errlist[] and sys_nerr is provided by weak
references if they are supported. Otherwise, we're forced to have to
have two copies of the error message string table in the library.
Fortunately, unless a program uses both sys_errlist[] and strerror(),
only one of the copies will be linked into the executable.
This is all to provide an clean namespace as required by ANSI. I've
done the same for sys_siglist[], even though it is not required, to
be consistant.