Ruby 2.7.0p0(2019-12-25revision647ee6f091eafcce70ffb75ddf7e121e192ab217)

strerror.c
Go to the documentation of this file.
1 /* public domain rewrite of strerror(3) */
2
3 #include "ruby/missing.h"
4
5 extern int sys_nerr;
6 extern char *sys_errlist[];
7
8 static char msg[50];
9
10 char *
11 strerror(int error)
12 {
13 if (error <= sys_nerr && error > 0) {
14 return sys_errlist[error];
15 }
16 snprintf(msg, sizeof(msg), "Unknown error (%d)", error);
17 return msg;
18 }
sys_errlist
char * sys_errlist[]
snprintf
int snprintf(char *__restrict, size_t, const char *__restrict,...) __attribute__((__format__(__printf__
error
const rb_iseq_t const char * error
Definition: rb_mjit_min_header-2.7.0.h:13506
strerror
char * strerror(int error)
Definition: strerror.c:11
missing.h
sys_nerr
int sys_nerr