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 *
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