use GNU-specific strerror_r